力扣第95题 不同的二叉搜索树II
Posted woodjay
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了力扣第95题 不同的二叉搜索树II相关的知识,希望对你有一定的参考价值。
力扣第95题 不同的二叉搜索树II
给定一个整数 n,生成所有由 1 ... n 为节点所组成的二叉搜索树。
struct TreeNode {
int val;
TreeNode *left;
TreeNode *right;
TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};
vector<TreeNode*> generateTree(int start, int end)
{
vector<TreeNode*> vect;
if (start > end)
{
vect.push_back(NULL);
return vect;
}
for (int i = start; i <= end; i++)
{
vector<TreeNode*> left = generateTree(start, i - 1);
vector<TreeNode*> right = generateTree(i + 1, end);
for (vector<TreeNode*>::iterator itorl = left.begin(); itorl != left.end(); itorl++)
{
for (vector<TreeNode*>::iterator itorr = right.begin(); itorr != right.end(); itorr++)
{
TreeNode* pNode = new TreeNode(i);
pNode->left = *itorl;
pNode->right = *itorr;
vect.push_back(pNode);
}
}
}
return vect;
}
vector<TreeNode*> generateTrees(int n)
{
vector<TreeNode*> vect;
if (n <= 0)
{
return vect;
}
return generateTree(1, n);
}
以上是关于力扣第95题 不同的二叉搜索树II的主要内容,如果未能解决你的问题,请参考以下文章
Leetcode练习(Python):动态规划类:第95题:不同的二叉搜索树 II:给定一个整数 n,生成所有由 1 ... n 为节点所组成的二叉搜索树。
Leetcode练习(Python):动态规划类:第95题:不同的二叉搜索树 II:给定一个整数 n,生成所有由 1 ... n 为节点所组成的二叉搜索树。