알고리즘/트리

정렬된 배열의 이진 탐색 트리 변환

jwjwvison 2022. 5. 8. 14:20

 정확히 중앙값을 갖도록 내림값을 리턴하는 // 연산자를 사용했다.

 

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def sortedArrayToBST(self, nums: List[int]) -> Optional[TreeNode]:
        
        if not nums:
            return None
                
        mid=len(nums)//2
        
        node=TreeNode(nums[mid])
        node.left=self.sortedArrayToBST(nums[:mid])
        node.right=self.sortedArrayToBST(nums[mid+1:])
        
        return node

'알고리즘 > 트리' 카테고리의 다른 글

이진 탐색 트리(BST) 노드 간 최소 거리  (0) 2022.05.09
이진 탐색 트리(BST) 합의 범위  (0) 2022.05.08
이진 탐색 트리  (0) 2022.05.08
최소 높이 트리  (0) 2022.05.04
균형 이진 트리  (0) 2022.05.03