卡塔兰数

卡塔兰数是组合数学中一个常在各种计数问题中出现的数列。



除去一般的公式,卡诺兰数还有一些其他的等价表达形式。


卡塔兰数_第1张图片
卡塔兰数_第2张图片
卡塔兰数_第3张图片

卡诺兰数的应用
组合数学中,有非常多的组合结构可以用卡诺兰数来计数:

  • 有n个左括号(和n个右括号),随意排列组合,共有多少种合法表达式。
  • 对于一个栈而言,有n次进栈和n次出栈,随意排列组合,共有多少种合法的出入栈的形式。
  • ……

相关证明
针对上述问题为何满足卡诺兰数,给出如下证明:
令1表示入栈,0表示出栈,则共有C(2n,n)种排列方式。把出入栈按顺序一一写出,可表示为一个二进制数。但其中有一些是不合法的,下面要减去不合法的个数。
若某一种方式不合法,则在某个数2m+1处,会有m+1个0和m个1。把2m+2及其之后所有的数逐位取反,则会得到一个有着n+1个0和n-1个1的
二进制数,反之亦然。
因为在2m+1之前,无论是C(n,2n)中不合法的形式还是C(n-1,2n)都是m+1个0和m个1的全排,而2m+1之后取反是一个一一对应的操作,取反操作完之后二者又是相同的。所以这两种情况的是一一对应的,那么减去不合法的数的个数即是减去C(n,n+1)的个数。得到公式:

C(n,2n)-C(n+1,2n)

恰好与卡诺兰数的一种表达形式相同,故得证。

你可能感兴趣的:(卡塔兰数)