LintCode:把排序数组转换为高度最小的二叉搜索树

LintCode:把排序数组转换为高度最小的二叉搜索树


class Solution:
    def sortedArrayToBST(self, A):
        begin = 0
        end = len(A) - 1
        root = self.sorted_tree(A, begin, end)
        return root

    def sorted_tree(self, A, begin, end):
        if begin > end:
            return
        mid = (begin + end) / 2
        root = TreeNode(A[mid])
        root.left = self.sorted_tree(A, begin, mid - 1)
        root.right = self.sorted_tree(A, mid +1, end)
        return root

你可能感兴趣的:(搜索)