Unique Binary Search Trees II
2013-10-05 17:03
246 查看
递归。虽然有很多重叠的子问题,但是用DP的话很难表示。。所以用递归也ok,数据集也能过
vector<TreeNode *> generateTrees(int n) { return construct(1,n); } vector<TreeNode *> construct(int start,int end) { vector<TreeNode*> res; if(start>end) { res.push_back(NULL); return res; } for(int i=start;i<=end;i++) { vector<TreeNode*> leftTrees = construct(start,i-1); vector<TreeNode*> rightTrees = construct(i+1,end); for(int j=0;j<leftTrees.size();j++) { for(int k=0;k<rightTrees.size();k++) { TreeNode* root = new TreeNode(i); root->left = leftTrees[j]; root->right = rightTrees[k]; res.push_back(root); } } } return res; }
相关文章推荐
- 95.96. Unique Binary Search Trees II
- LeetCode.96(95) Unique Binary Search Trees(fibonacci的经典改进算法)&& II
- LeetCode Unique Binary Search Trees II
- **[Lintcode]Unique Binary Search Trees II 不同的二叉查找树 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(95) Unique Binary Search Trees II
- leetcode 95. Unique Binary Search Trees II
- LeetCode Unique Binary Search Trees II
- CODE 37: Unique Binary Search Trees II
- Unique Binary Search Trees II
- Unique Binary Search Trees II
- [LeetCode] 95. Unique Binary Search Trees II
- 95. Unique Binary Search Trees II
- [leetcode] 95. Unique Binary Search Trees II 解题报告
- 95. Unique Binary Search Trees II
- LeetCode-95-Unique Binary Search Trees II 二叉树
- Unique Binary Search Trees II