Leetcode:convert_sorted_array_to_binary_search_tree
2024-10-10 22:11:38
一、 称号
排序后的数组成二叉搜索树。
二、 分析
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;
}
};
版权声明:本文博主原创文章。博客,未经同意不得转载。
最新文章
- Live YUV420 和 OpenCV Mat 的互相转换
- Hammer.js分析(四)——recognizer.js
- jQuery 中的事件冒泡和阻止默认行为
- 点击页面任何位置隐藏div
- BI的相关问题[转]
- BZOJ 1588: [HNOI2002]营业额统计 双向链表 / splay / treap
- Entity Framework6 with Oracle
- WordPress主题制作教程7:引用其他php的方法
- [HIHO1300]展胜地的鲤鱼旗(栈,dp)
- Git中.gitignore文件不起作用的解决以及Git中的忽略规则介绍
- windows微信双开
- Grunt 入门操作指南
- MT【248】$f(x)=\dfrac{1}{x-1}+\dfrac{1}{x-b}$的性质
- git拉取远程分支到本地
- 数列分块入门九题(一):LOJ6277~6279
- python函数 传参的多种方式 解读
- 2018-2019 ACM-ICPC, Asia East Continent Finals Solution
- Uva5211/POJ1873 The Fortified Forest 凸包
- 解决bootstrap中显示不了本地字体图标
- Jmeter===Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍(转)
热门文章
- c语言 int (*p)[5] 类型分析
- Maven学习笔记(三) :Maven使用入门
- OWIN 为WebAPI
- 小巧的UML工具-UMLet
- Java SE学习之数组——匿名数组和不规则数组
- Apidemos--&;gt;Views-Lists-Cursor(people)学�
- 惠普4431s 笔记本配置
- c# winfrom DataGridView使行高不可改变,使列头高度不可改变,
- zoj 2156 - Charlie&;#39;s Change
- Bombing HDU, 4022(QQ糖的消法)