【unique-binary-search-trees-ii】
来源:互联网 发布:淘宝店铺怎样装修视频 编辑:程序博客网 时间:2024/06/06 16:37
Given n, generate all structurally unique BST's (binary search trees) that store values 1...n.
For example,
Given n = 3, your program should return all 5 unique BST's shown below.
1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ \ 2 1 2 3
confused what"{1,#,2,3}"means? > read more on how binary tree is serialized on OJ.
OJ's Binary Tree Serialization:
The serialization of a binary tree follows a level order traversal, where '#' signifies a path terminator where no node exists below.
Here's an example:
1 / \ 2 3 / 4 \ 5
The above binary tree is serialized as"{1,2,3,#,#,4,#,#,5}".
题意:输出1到n组成的所有二叉搜索树的结构
思路:
选定1-n的一个数字i作为根节点、0到i-1是左子树, i+1-n是右子树,两层循环;
class Solution{public:vector<TreeNode*> generateTrees(int n){return create(1, n);}vector<TreeNode*> create(int left, int right){vector<TreeNode*> res;if (left>right){res.push_back(NULL);return res;}for (int i=left; i<=right; i++){vector<TreeNode*> leftTree = create(left, i-1);vector<TreeNode*> rightTree = create(i+1, right);for (int j = 0; j<leftTree.size(); j++){for (int k = 0; k<rightTree.size(); k++){TreeNode* root = new TreeNode(i);root->left = leftTree[j];root->right = rightTree[k];res.push_back(root);}}}return res;}};
阅读全文
0 0
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees (& II)
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- Event常见属性-css学习
- c++运算符重载
- Flex-伸缩布局-flex-常用标签
- 1002. 写出这个数 (20) python3.6
- 字符串的压缩strZig
- 【unique-binary-search-trees-ii】
- IE浏览器使用ajax时严重的缓存问题。
- Git忽略文件-gitignore
- HTML5文件拖拽
- 有1,2,3,4四个数字,能组成多少个互不相同且无重复数字的三位数 都是多少
- JS-JSON和字符串互相转换-将字符串转换成对象-对象转换成字符串
- 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛-A. Banana
- JS-封装 ajax XmlHttpRequest
- PHP性能:序——谈ab(Apache Bench)压力测试工具