LeetCode --- 108. Convert Sorted Array to Binary Search Tree
来源:互联网 发布:刚买的域名怎么访问 编辑:程序博客网 时间:2024/05/16 14:56
题目链接:Convert Sorted Array to Binary Search Tree
Given an array where elements are sorted in ascending order, convert it to a height balanced BST.
这道题的要求是将有序数组转化成高度平衡的二叉搜索树(BST)。
由于数组有序,因此相当于二叉搜索树的前序遍历。又由于要求二叉搜索树高度平衡,即左右子树高度相差小于等于1,所以取数组中间的数作为根节点,左边作为左子树,右边作为右子树,这样就可以构造出高度平衡的二叉搜索树了。
这样,思路就和Construct Binary Tree from Preorder and Inorder Traversal以及Construct Binary Tree from Inorder and Postorder Traversal差不多,都是递归构造左右子树即可。
时间复杂度:O(n)
空间复杂度:O(n)
1 class Solution 2 { 3 public: 4 TreeNode *sortedArrayToBST(vector<int> &num) 5 { 6 return sortedArrayToBST(num, 0, num.size() - 1); 7 } 8 private: 9 TreeNode *sortedArrayToBST(vector<int> &num, int l, int r)10 {11 if(l > r)12 return NULL;13 14 int m = (l + r) / 2;15 TreeNode *root = new TreeNode(num[m]);16 root -> left = sortedArrayToBST(num, l, m - 1);17 root -> right = sortedArrayToBST(num, m + 1, r);18 return root;19 }20 };
转载请说明出处:LeetCode --- 108. Convert Sorted Array to Binary Search Tree
0 0
- LeetCode 108. Convert Sorted Array to Binary Search Tree
- [LeetCode]108.Convert Sorted Array to Binary Search Tree
- 108. Convert Sorted Array to Binary Search Tree Leetcode Python
- [Leetcode] 108. Convert Sorted Array to Binary Search Tree
- LeetCode --- 108. Convert Sorted Array to Binary Search Tree
- [leetcode] 108.Convert Sorted Array to Binary Search Tree
- LeetCode 108. Convert Sorted Array to Binary Search Tree
- 108. Convert Sorted Array to Binary Search Tree LeetCode
- [LeetCode]108. Convert Sorted Array to Binary Search Tree
- [LeetCode]108. Convert Sorted Array to Binary Search Tree
- [leetcode] 108. Convert Sorted Array to Binary Search Tree
- Leetcode 108. Convert Sorted Array to Binary Search Tree
- leetCode 108. Convert Sorted Array to Binary Search Tree JAVA
- LeetCode *** 108. Convert Sorted Array to Binary Search Tree
- leetcode 108. Convert Sorted Array to Binary Search Tree
- leetcode 108. Convert Sorted Array to Binary Search Tree
- LeetCode - 108. Convert Sorted Array to Binary Search Tree
- 【LeetCode】108. Convert Sorted Array to Binary Search Tree
- bat putty shell 连携
- linux下实时查看tomcat运行日志
- 文章标题
- LeetCode --- 107. Binary Tree Level Order Traversal II
- HTTP Header 详解
- LeetCode --- 108. Convert Sorted Array to Binary Search Tree
- 第六周项目6——复数模板类
- ODBC && OLEDB
- self-cultivation
- C字符串与C++字符串的深入理解
- iOS 开发APP时版本更新,版本新特性的设置
- storyboard快速布局、约束怎么快速添加、拉线约束的快捷键表
- LeetCode --- 109. Convert Sorted List to Binary Search Tree
- Subsets 全排列问题