LeetCode | Unique Binary Search Trees II
来源:互联网 发布:linux拷贝文件命令失败 编辑:程序博客网 时间:2024/06/03 17:31
题目
Given an integer 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
思路
依次将每个数作为根节点,然后对根节点左边的数和右边的数做递归运算即可
代码
/** * 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) { if(n == 0) return new ArrayList<TreeNode>(); return constructTrees(1,n); } public List<TreeNode> constructTrees(int left,int right){ if(left > right){ List<TreeNode> listTrees = new ArrayList<TreeNode>(); listTrees.add(null); return listTrees; } List<TreeNode> listTrees = new ArrayList<TreeNode>(); for(int i=left;i<=right;i++){ List<TreeNode> listLeftTrees = constructTrees(left,i-1); List<TreeNode> listRightTrees = constructTrees(i+1,right); for(TreeNode leftNode:listLeftTrees){ for(TreeNode rightNode:listRightTrees){ TreeNode rootNode = new TreeNode(i); rootNode.left = leftNode; rootNode.right = rightNode; listTrees.add(rootNode); } } } return listTrees; }}
阅读全文
0 0
- 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
- [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
- Hession学习1
- maven配置tomcat,jdk插件
- IP地址的分类
- 不要忘记别人的不屑忽略和自己向往的方向
- java集合、IO流
- LeetCode | Unique Binary Search Trees II
- 雅克比算法 JAVA实现
- Hession学习2
- 并查集+map——BZOJ4195/Luogu1955 [Noi2015]程序自动分析
- POI 处理Excel的导入操作
- IDEA项目配置和web部署
- 修改tomcat端口、发布路径等问题
- Maven_Spring_Memcache 实例
- 欢迎使用CSDN-markdown编辑器