LeetCode - Unique Binary Search Trees II
2013-08-24 14:32
399 查看
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.
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 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 begin,int end){ vector<TreeNode *> rootVec,leftVec,rightVec; if(begin>end){ rootVec.push_back(NULL); return rootVec; } for(int k=begin;k<=end;k++){ leftVec=generateTrees(begin,k-1); rightVec=generateTrees(k+1,end); for(int i=0;i<leftVec.size();i++){ for(int j=0;j<rightVec.size();j++){ TreeNode *root=new TreeNode(k); root->left=leftVec[i]; root->right=rightVec[j]; rootVec.push_back(root); } } } return rootVec; } vector<TreeNode *> generateTrees(int n) { return generateTrees(1,n); } };
相关文章推荐
- LeetCode95 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
- LeetCode095 Unique Binary Search Trees II
- LeetCode: Unique Binary Search Trees II
- [LeetCode] Unique Binary Search Trees II, Solution
- leetcode - 95.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 独一无二的二叉搜索树之二
- [leetcode]Unique Binary Search Trees II
- 【leetcode刷题笔记】Unique Binary Search Trees II
- LeetCode 95. Unique Binary Search Trees II
- [Leetcode] Unique Binary Search Trees I,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