您的位置:首页 > 产品设计 > UI/UE

leetcode-96-Unique Binary Search Trees

2017-10-25 22:58 288 查看

问题

题目:[leetcode-96]

思路

catalan数。至于怎么分析的,参考自己的lintcode刷题里对这个题的解释。基本方法是固定根节点之后,剩下的N-1个节点,依次在左右两支展开。

代码

class Solution {
public:
int numTrees(int n) {
return catalan(n);
}
private:
int catalan(int n) {
vector<int> dp(n+1, 0);
dp[0] = dp[1] = 1;
for(int i = 2; i <= n; ++i) {
for(int j = 0; j < i; ++j) {
dp[i] += dp[j]*dp[i-1-j];
}
}
return dp
;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: