对于已排序数组,二分法递归构造BST
代码:
TreeNode *buildBST(vector<int> &num, int i, int j) {
if (i > j)
return NULL; int m = (i + j) /;
TreeNode *node = new TreeNode(num[m]);
node->left = buildBST(num, i, m - );
node->right = buildBST(num, m + , j); return node;
} TreeNode *sortedArrayToBST(vector<int> &num) {
return buildBST(num, , num.size() - );
}