递归与二叉树_leetcode108

# Definition for a binary tree node.
class TreeNode(object):
def __init__(self, x):
self.val = x
self.left = None
self.right = None

class Solution(object):
def sortedArrayToBST(self, nums):
"""
:type nums: List[int]
:rtype: TreeNode
"""

size = len(nums)

if size == 0:
return None

if size == 1:
return TreeNode(nums[0])

mid = size / 2

root = TreeNode(nums[mid])
root.left = self.sortedArrayToBST(nums[0:mid])
root.right = self.sortedArrayToBST(nums[mid+1:size])

return root


posted @ 2019-03-17 13:57  AceKo  阅读(60)  评论(0)    收藏  举报