108. 将有序数组转换为二叉搜索树 - 力扣(LeetCode)
思路:(注意题目要求是平衡二叉树!!!)
递归出口:
当传入数组为空时,返回空。
单层递归逻辑:
找到数组中间的值,令其为root,数组左边为root的左子树,数组右边为root的右子树。
最后返回root。
class Solution(object):
def sortedArrayToBST(self, nums):
arrLen=len(nums)
if arrLen==0:
return None
mid=arrLen/2
root=TreeNode(val=nums[mid])
root.left=self.sortedArrayToBST(nums[0:mid])
root.right=self.sortedArrayToBST(nums[mid+1:arrLen])
return root
标签:nums,--,self,随想录,mid,arrLen,二叉树,数组,root
From: https://blog.csdn.net/weixin_56989647/article/details/142376447