Leetcode#108 Convert Sorted Array to Binary Search Tree
对于已排序数组,二分法递归构造BST
代码:
1 TreeNode *buildBST(vector<int> &num, int i, int j) { 2 if (i > j) 3 return NULL; 4 5 int m = (i + j) /2; 6 TreeNode *node = new TreeNode(num[m]); 7 node->left = buildBST(num, i, m - 1); 8 node->right = buildBST(num, m + 1, j); 9 10 return node; 11 } 12 13 TreeNode *sortedArrayToBST(vector<int> &num) { 14 return buildBST(num, 0, num.size() - 1); 15 }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步