本文共 463 字,大约阅读时间需要 1 分钟。

每次取中点作为根节点,递归的处理,就能保住构建出来的二叉树一定是平衡二叉树。
class Solution {public:    TreeNode* sortedArrayToBST(vector       & nums) {        return helper(nums,0,nums.size()-1);    }    TreeNode* helper(vector         & nums, int start, int end){        if(start>end) return NULL;        int mid = (start+end)/2;        TreeNode* root = new TreeNode(nums[mid]);        root->left = helper(nums,start,mid-1);        root->right = helper(nums,mid+1,end);        return root;    }};          
转载地址:http://pjqv.baihongyu.com/