Unique Binary Search Trees II
2015-06-13 12:23
435 查看
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { public List<TreeNode> generateTrees(int n) { return myGenerate(1, n); } private List<TreeNode> myGenerate(int start, int end) { List<TreeNode> result = new ArrayList<TreeNode>(); //截止条件 if (start > end) { result.add(null); return result; } for (int i = start; i <= end; i++) { List<TreeNode> left = myGenerate(start, i - 1); List<TreeNode> right = myGenerate(i + 1, end); for (TreeNode l : left) { for (TreeNode r : right) { TreeNode root = new TreeNode(i); root.left = l; root.right = r; result.add(root); } } } return result; } }
相关文章推荐
- 命令行快速技巧:如何定位一个文件
- cmd tree命令 以树形格式罗列文件
- 推荐8款jQuery轻量级树形Tree插件
- tree 以树形格式罗列文件
- EasyUI Tree+Asp.net实现权限树或目录树导航的简单实例
- E3 tree 1.6在Firefox下显示问题的修复方法
- js树形控件脚本代码
- 基于Android中dp和px之间进行转换的实现代码
- Android中dip、dp、sp、pt和px的区别详解
- LFC1.0.0 版本发布
- Spark Decision Tree
- 带check的treeView
- extjs 4 treepanel locked and expand
- Android px、dp、sp之间相互转换
- JQuery EasyUI 实现tree的右键菜单
- flex tree 的两个小技巧
- Tree.log
- android中像素单位dp、px、pt、sp的比较
- gnome文件管理器(nautilus)树形结构文件窗口 多窗口
- Android对px和dip进行尺寸转换的方法