球迷购票问题
栈
小猫
例题:
括号化问题
P=a1×a2×a3×……×an,依据乘法结合律,不改变其顺序,只⽤括号表示成对的乘积,试问有⼏种括号化的方案?
出栈次序问题
⼀个栈(⽆穷⼤)的进栈序列为1,2,3,..n,有多少个不同的出栈序列?
将多边行划分为三角形问题
将⼀个凸多边形区域分成三⻆形区域的⽅法数?
公式
递归公式
int catalan(int n){
if (n == 0)
return 1;
if (n == 1)
return 1;
int res = 0;
for (int i = 1; i <= n - 1;i++){
res += catalan(i)*catalan(n - i);
}
return res;
}
递推公式
f[0]=f[1]=1;
for(int i=2;i<=n;++i){
for(int j=0;j<i;j++){
f[i] = (f[i]+f[j]*f[i-1-j]));
}
}