#177 Convert Sorted Array to Binary Search Tree With Minimal Height
来源:互联网 发布:付费的炒股软件 编辑:程序博客网 时间:2024/06/16 09:36
题目描述:
Given a sorted (increasing order) array, Convert it to create a binary tree with minimal height.
Notice
There may exist multiple valid solutions, return any of them.
Example
题目思路:Given [1,2,3,4,5,6,7]
, return
4 / \ 2 6 / \ / \1 3 5 7
对于bst来说,最矮的bst应该是以A中的中位数作为root的一个bst,它的左子树为中位数之前的那些数组成的bst,右子树为中位数之后的那些数组成的bst。这样就是一个recursion的算法。
Mycode(AC = 135ms):
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } */class Solution {public: /** * @param A: A sorted (increasing order) array * @return: A tree node */ TreeNode *sortedArrayToBST(vector<int> &A) { // write your code here return sortedArrayToBST(A, 0, A.size() - 1); } TreeNode *sortedArrayToBST(vector<int> &A, int start, int end) { if (start > end) { return NULL; } else if (start == end) { return new TreeNode(A[start]); } else { int mid = (start + end) / 2; TreeNode *root = new TreeNode(A[mid]); root->left = sortedArrayToBST(A, start, mid - 1); root->right = sortedArrayToBST(A, mid + 1, end); return root; } }};
0 0
- #177 Convert Sorted Array to Binary Search Tree With Minimal Height
- 递归---Convert Sorted Array to Binary Search Tree With Minimal Height
- Lintcode177 Convert Sorted Array to Binary Search Tree With Minimal Height solution 题解
- lintcode convert-sorted-array-to-binary-search-tree-with-minimal-height 把排序数组转换为高度最小的二叉搜索树
- 177.Convert Sorted Array to Binary Search Tree With Minimal Height-把排序数组转换为高度最小的二叉搜索树(容易题)
- 【LeetCode with Python】 Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Java Web学习(40):BeanUtils的使用
- sdut oj1488 数据结构实验:连通分量个数
- android事件传递机制
- 应用层--计算机网络
- Hadoop的多目录输出 -2
- #177 Convert Sorted Array to Binary Search Tree With Minimal Height
- shell脚本二(图片重命名)
- sqlite3加密功能--sqlcipher
- C++之List容器
- Java Eclipse进行断点调试
- WCF双工通讯实现聊天传文件
- 中软Java学习笔记8月11日笔记之File
- 程序员必须知道的10大基础实用算法及其讲解(转自http://www.oschina.net/question/1397765_159365)
- CSS实现三列图片等宽等间距布局