组合数学
组合数学
卡特兰数
卡特兰数对应的序列为 \(1,1,2,5,14,42,132\cdots\)
递归定义:\(C_0=C_1=1,C_n=\sum_{i=0}^{n-1} C_i C_{n-i-1}(n\ge 2)\)
通项公式:\(C_n=\binom{2n}{n}-\binom{2n}{n-1}=\frac{(2n)!}{n!(n+1)!}\)
应用:
括号序列:\(n\) 个 (
,\(n\) 个 )
,形成长度为 \(2n\) 的合法括号序列,方案数为 \(\binom{2n}{n}-\binom{2n}{n-1}\)。
证明如下:设 \(f_i\) 表示长度为 \(2i\) 的合法括号序列个数,序列第 \(1\) 位一定是 (
,因为序列合法,与第一个 (
匹配的 )
一定在位置 \(2j\),因为它们之间一定有偶数个括号,枚举与第一个 (
相匹配的 )
,把序列分成括号对内和括号对右边两部分,答案加上这两部分方案数的乘积。得到转移方程 \(f_i=\sum_{j=0}^{i-1}f_jf_{i-j-1}\),符合卡特兰数的递归定义,证毕。
经验
本文来自博客园,作者:liyixin,转载请注明原文链接:https://www.cnblogs.com/liyixin0514/p/18357715