Advertisement
knakul853

Untitled

Jul 24th, 2020
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.56 KB | None | 0 0
  1. /**
  2. knakul853
  3.  */
  4. class Solution {
  5. public:
  6.     TreeNode* sortedArrayToBST(vector<int>& nums) {
  7.         int n = (int)nums.size();
  8.        
  9.         if( !n ) return NULL;
  10.        return dfs(nums, 0, n-1);
  11.        
  12.     }
  13.    
  14.     TreeNode* dfs( vector<int>&nums, int st, int end )
  15.     {
  16.         if(st > end) return NULL;
  17.         TreeNode* root = new TreeNode(nums[(st+end)/2]);
  18.         int md = ( st + end )/2;
  19.        
  20.          root->left = dfs( nums, st, md-1);
  21.          root->right = dfs(nums, md+1, end);
  22.        
  23.          return root;
  24.        
  25.     }
  26. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement