leetcode 刷题之路 50 Unique Binary Search Trees II
来源:互联网 发布:图片纹理算法 编辑:程序博客网 时间:2024/05/22 10:31
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
Given n, generate all structurally unique BST's (binary search trees) that store values 1...n
接上一道题目Unique Binary Search,这道题要求求出数字1~n构成的所有二叉查找树。
AC code:
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector<TreeNode *> generateTrees(int n) { return helper(1,n); } vector<TreeNode *> helper(int begin,int end) { vector<TreeNode*> trees; vector<TreeNode*> leftChildren; vector<TreeNode*> rightChildren; if(begin>end) trees.push_back(NULL); for(int i=begin;i<=end;i++) { leftChildren=helper(begin,i-1); rightChildren=helper(i+1,end); for(int j=0;j<leftChildren.size();j++) { for(int k=0;k<rightChildren.size();k++) { TreeNode* root=new TreeNode(i); root->right=rightChildren[k]; root->left=leftChildren[j]; trees.push_back(root); } } } return trees; }};
0 0
- leetcode 刷题之路 50 Unique Binary Search Trees II
- LeetCode之Unique Binary Search Trees II
- leetcode 刷题之路 49 Unique Binary Search Trees
- [leetcode刷题系列]Unique Binary Search Trees II
- LeetCode刷题笔录Unique Binary Search Trees II
- leetcode之Unique Binary Search Trees && Unique Binary Search Trees II
- LeetCode之Unique Binary Search Trees & Unique Binary Search Trees II
- LeetCode: Unique Binary Search Trees II
- LeetCode : Unique Binary Search Trees II
- [LeetCode] Unique Binary Search Trees II
- leetcode Unique Binary Search Trees II
- [LeetCode]Unique Binary Search Trees II
- [leetcode]Unique Binary Search Trees II
- LeetCode-Unique Binary Search Trees II
- [leetcode] Unique Binary Search Trees II
- LeetCode - Unique Binary Search Trees II
- LeetCode 95: Unique Binary Search Trees II
- Leetcode Unique Binary Search Trees II
- web前端黑客技术之数据与指令【sql注入、xss跨站脚本攻击】
- 重载自增和自减操作符
- HDU 3065 病毒侵袭持续中 AC自动机题解
- 二、地图的创建
- JS的functioin
- leetcode 刷题之路 50 Unique Binary Search Trees II
- diff
- 单片机中的sbit
- mysql using() 能用于三张表查询吗,如果不能那用什么
- hdu4920(矩阵 乘法)
- 如何使用ContentResolver
- OC中 NSArray中常用的方法,记住了就不用再看API
- 线段树(待续)(区间每个数加上不同的斐波那契额数)Codeforces Round #FF (Div. 2)E
- android cmd adb命令安装和删除apk应用