卡特兰数相关问题

Posted 小河沟大河沟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了卡特兰数相关问题相关的知识,希望对你有一定的参考价值。

一、什么是Catalan数

说到Catalan数,就不得不提及Catalan序列,Catalan序列是一个整数序列,其通项公式是

C_n = /frac{1}{n+1}{2n/choose n} = /frac{(2n)!}{(n+1)!/,n!} /quad n/ge 0

递推公式是

C(n) = C(1)*C(n-1) + C(2)*C(n-2) + ... + C(n-1)C(1),n>=2

我们从中取出的C_n就叫做第n个Catalan数,前几个Catalan数如下:

1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, …

咋看之下没什么特别的,但是Catalan数却是许多计数问题的最终形式。

 

二、Catalan数在组合计算中的应用

1、矩阵链乘: P=a1×a2×a3×……×an,依据乘法结合律,不改变其顺序,只用括号表示成对的乘积,有几种括号化的方案?

2、一个栈(无穷大)的进栈序列为1,2,3,…,n,有多少个不同的出栈序列?

3、n个节点构成的二叉树,共有多少种情形?

4、求一个凸多边形区域划分成三角形区域的方法数?


5、在圆上选择2n个点,将这些点成对链接起来使得所得到的n条线段不相交,一共有多少种方法?(下图供参考)


6、n*n的方格地图中,从一个角到另外一个角,不跨越对角线的路径数为h(n).例如, 4×4方格地图中的路径有:


7、n层的阶梯切割为n个矩形的切法数也是C_n。如下图所示:


8、有2n个人排成一行进入剧场。入场费5元。其中只有n个人有一张5元钞票,另外n人只有10元钞票,剧院无其它钞票,问有多少中方法使得只要有10元的人买票,售票处就有5元的钞票找零?

9、甲乙两人比赛乒乓球,最后结果为20∶20,问比赛过程中甲始终领先乙的计分情形的种数。

10、2n个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对应的第一排的人高,问排列方式有多少种?

 

以上题目的最终解均与卡特兰数相关,具体的求解分析见“参考资料”。

 

参考资料:

从《编程之美》买票找零问题说起,娓娓道来卡特兰数——兼爬坑指南

以上是关于卡特兰数相关问题的主要内容,如果未能解决你的问题,请参考以下文章

组合数学卡特兰数 / 大施罗德数 相关

组合数学卡特兰数 / 大施罗德数 相关

组合数学卡特兰数 / 大施罗德数 相关

卡特兰数-Catalan数

Golang 实现卡特兰数

HDU-3240(卡特兰数+分解质因数后求逆元)