An easy Python solution
The idea is to find the root first, then recursively build each left and right subtree\n\n    # Definition for a  binary tree node\n    # class TreeNode:\n    #
The idea is to find the root first, then recursively build each left and right subtree\n\n    # Definition for a  binary tree node\n    # class TreeNode:\n    #     def __init__(self, x):\n    #         self.val = x\n    #         self.left = None\n    #         self.right = None\n    \n    class Solution:\n        # @param num, a list of integers\n        # @return a tree node\n        # 12:37\n        def sortedArrayToBST(self, num):\n            if not num:\n                return None\n    \n            mid = len(num) // 2\n    \n            root = TreeNode(num[mid])\n            root.left = self.sortedArrayToBST(num[:mid])\n            root.right = self.sortedArrayToBST(num[mid+1:])\n    \n            return root
['Python']