leetcode第一刷_Convert Sorted Array to Binary Search Tree

晕。竟然另一样的一道题。换成sorted array的话。找到中间位置更加方便了。

TreeNode *sortTree(vector<int> &num, int start, int len){
    if(len <= 0)    return NULL;
    int middle = len/2;
    TreeNode *root = new TreeNode(num[start+middle]);
    root->left = sortTree(num, start, middle);
    root->right = sortTree(num, start+middle+1, len-middle-1);
}

class Solution {
public:
    TreeNode *sortedArrayToBST(vector<int> &num) {
        return sortTree(num, 0, num.size());
    }
};


原文地址:https://www.cnblogs.com/claireyuancy/p/7088105.html