这道题很简单是catalan数,只要知道catalan数的递推公式就可以了。
class Solution {
public:
long long numTrees(int n) {
long long *h = new long long[n+1];
h[0]=1;h[1]=1;
for(int i=2;i<=n;i++)
h[i]=h[i-1]*(4*i-2)/(i+1);
return h[n];
}
};

本文介绍了一种使用C++实现的Catalan数计算方法,通过递推公式高效地计算第n个Catalan数。这种方法适用于解决涉及二叉树等组合数学问题。
484

被折叠的 条评论
为什么被折叠?



