一、     称号

排序后的数组成二叉搜索树。

二、     分析

BST的中序遍历是一个sorted-array,再构造回去成一个BST,先将中间的元素作为根节点,这个节点的左右各自是左子树和右子树。如此递归地进行就可以。

/**
* Definition for binary tree
* struct TreeNode {
* int val;
* TreeNode *left;
* TreeNode *right;
* TreeNode(int x) : val(x), left(NULL), right(NULL) {}
* };
*/
class Solution {
public:
TreeNode *sortedArrayToBST(vector<int> &num) {
return addNode(num, 0, num.size()-1);
}
TreeNode *addNode(vector<int> &num, int start, int end){
if(start > end) return NULL; int mid = (start + end)/2;
TreeNode *root = new TreeNode(num[mid]);
root->left = addNode(num, start, mid-1);
root->right = addNode(num, mid+1, end);
return root;
}
};

版权声明:本文博主原创文章。博客,未经同意不得转载。

最新文章

  1. Live YUV420 和 OpenCV Mat 的互相转换
  2. Hammer.js分析(四)——recognizer.js
  3. jQuery 中的事件冒泡和阻止默认行为
  4. 点击页面任何位置隐藏div
  5. BI的相关问题[转]
  6. BZOJ 1588: [HNOI2002]营业额统计 双向链表 / splay / treap
  7. Entity Framework6 with Oracle
  8. WordPress主题制作教程7:引用其他php的方法
  9. [HIHO1300]展胜地的鲤鱼旗(栈,dp)
  10. Git中.gitignore文件不起作用的解决以及Git中的忽略规则介绍
  11. windows微信双开
  12. Grunt 入门操作指南
  13. MT【248】$f(x)=\dfrac{1}{x-1}+\dfrac{1}{x-b}$的性质
  14. git拉取远程分支到本地
  15. 数列分块入门九题(一):LOJ6277~6279
  16. python函数 传参的多种方式 解读
  17. 2018-2019 ACM-ICPC, Asia East Continent Finals Solution
  18. Uva5211/POJ1873 The Fortified Forest 凸包
  19. 解决bootstrap中显示不了本地字体图标
  20. Jmeter===Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍(转)

热门文章

  1. c语言 int (*p)[5] 类型分析
  2. Maven学习笔记(三) :Maven使用入门
  3. OWIN 为WebAPI
  4. 小巧的UML工具-UMLet
  5. Java SE学习之数组——匿名数组和不规则数组
  6. Apidemos--&amp;gt;Views-Lists-Cursor(people)学�
  7. 惠普4431s 笔记本配置
  8. c# winfrom DataGridView使行高不可改变,使列头高度不可改变,
  9. zoj 2156 - Charlie&amp;#39;s Change
  10. Bombing HDU, 4022(QQ糖的消法)