leetcode 108. 질서 있 는 배열 을 이 진 검색 트 리 로 변환 합 니 다 (이 진 검색 트 리)

제목 설명:
 
오름차 순 으로 배 열 된 질서 있 는 배열 을 고도 균형 이 잡 힌 이 진 트 리 로 변환 합 니 다.
이 문제 에서 고도 균형 이 진 트 리 는 이 진 트 리 의 각 노드 를 가리킨다. 의 좌우 두 나무의 높이 차 는 절대 1 을 초과 하지 않 는 다.
예시:
      : [-10,-3,0,5,9],

        :[0,-3,9,-10,null,5],                  :

      0
     / \
   -3   9
   /   /
 -10  5

 
코드:
class Solution {
public:
    TreeNode* sortedArrayToBST(vector& nums) {
        int n=nums.size();
        TreeNode* root;
        if(n==0)return NULL;
        root=new TreeNode(nums[n/2]);
        root->left=build(0,n/2-1,nums);
        root->right=build(n/2+1,n-1,nums);
        return root;
    }
    TreeNode*build(int x,int y,vectornums){
        if(x>y)return NULL;
        int mid=(x+y)/2;
        TreeNode* root=new TreeNode(nums[mid]);
        root->left=build(x,mid-1,nums);
        root->right=build(mid+1,y,nums);
        return root;
    }
};

좋은 웹페이지 즐겨찾기