zoukankan      html  css  js  c++  java
  • LeetCode 108 Convert Sorted Array to Binary Search Tree

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST.

    For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1.

    Example:

    
    

     
     
     
     
    把一个升序序列变成一个平衡二叉搜索树:
    c++
    class Solution {
    public:
        TreeNode* sortedArrayToBST(vector<int>& nums) {
             if(nums.empty()) return NULL;
             int l = 0 ;
             int r = nums.size()-1;
             int mid = (l+r)/2 ;
             vector<int> left;
             vector<int> right;
            for(int i=0;i<mid;i++)
                left.push_back(nums[i]);
            for(int i=mid+1;i<=r;i++)
                right.push_back(nums[i]);
             TreeNode* tree = new TreeNode(nums[mid]);
             tree->left = sortedArrayToBST(left);
             tree->right = sortedArrayToBST(right);
            
            return tree;
             
            
        }
    };
  • 相关阅读:
    Design + Code (iOS)
    Objective-C Programming (2nd Edition)
    iOS Programming The Big Nerd Ranch Guide (4th Edition)
    反射
    面向对象
    人狗大战
    数据结构初识(三级菜单)
    面向对象(组合)
    练习
    re模块
  • 原文地址:https://www.cnblogs.com/dacc123/p/9232487.html
Copyright © 2011-2022 走看看