Unique Binary Search Trees II
来源:互联网 发布:淘宝资质授权书 编辑:程序博客网 时间:2024/05/07 10:18
Unique Binary Search Trees II
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.
/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; left = null; right = null; } * } */public class Solution { public List<TreeNode> generateTrees(int n) { return generateTree(1,n+1); } private List<TreeNode> generateTree(int min, int max){ List<TreeNode> list = new ArrayList<TreeNode>(); // base case if(min >= max){ TreeNode node = null; list.add(node); } // general case for(int i = min;i < max;i++){ List<TreeNode> left = generateTree(min,i); List<TreeNode> right = generateTree(i+1,max); for(int p = 0;p < left.size();p++){ for(int q = 0;q < right.size();q++){ TreeNode root = new TreeNode(i); root.left = left.get(p); root.right = right.get(q); list.add(root); } } } return list; }}
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
- 开源天气预报接口API以及全国所有地区代码!!(国家气象局提供)
- hdu4359 Easy Tree DP? dp
- Ubuntu下如何解压缩zip,tar,tar.gz,tar.bz2文件
- 数据结构——队列
- Visual Studio:error MSB8020
- Unique Binary Search Trees II
- debian、ubuntu、kali忘记root密码问题
- 《统计学习方法,李航》:12、统计学习方法总结
- SQL Server服务显示远程过程调用失败(连接SQL)
- ITOO-侧边栏的显隐
- RS232、RS485、TTL电平、CMOS电平
- sqlite数据库 判断表是否存在
- JAVASE常见面试题
- QWidget、QLabel、QPushButton的elidemode(省略模式)