卡特兰数又称卡塔兰数,卡特兰数是组合数学中一个常出现在各种计数问题中的数列。
原理(摘自百度百科)卡特兰数
令h(0)=1,h(1)=1,catalan数满足递推式 :
h(n)= h(0)*h(n-1)+h(1)*h(n-2) + … + h(n-1)*h(0) (n>=2)
例如:h(2)=h(0)*h(1)+h(1)*h(0)=1*1+1*1=2
h(3)=h(0)*h(2)+h(1)*h(1)+h(2)*h(0)=1*2+1*1+2*1=5另类递推式 :
h(n)=h(n-1)*(4*n-2)/(n+1);递推关系的解为:
h(n)=C(2n,n)/(n+1) (n=0,1,2,…)递推关系的另类解为:
h(n)=c(2n,n)-c(2n,n-1)(n=0,1,2,…)应用(参考以下CSDN博客)
2012腾讯实习笔试中看到的Catalan数1、正n+2边形能够分割成n个三角形的方法数。 2、 在一序列数中插入的成对的圆括号,使之成为乘法式子的种数。 3、到达N*N的正方形的两个相对顶点的路径数(不包含主对角线)。 4、含有n个结点的二叉树的个数。 …(⊙_⊙;)…