递推关系与生成函数
标签: 组合数学
斐波那契数列
- Sn=f0+f1+...+fn=fn+2−1
- 斐波那契数列fn是偶数,当且仅当n是3的倍数
- 任意斐波那契数列通项是 fn=c1×(1+5√2)n+c2×(1−5√2)n
帕斯卡三角形形从左下到右上对角线上二项式系数和是斐波那契数列(t=n+12 )
- Fn=(n−1\0)+(n−2\1)+(n−32)+⋯(n−tt−1)
生成函数
生成函数是无限可微函数的泰勒级数
设h0,h1,h2,⋯,hn⋯ 是无穷级数,他的生成函数定义为无穷级数
g(x)=h0+h1x+h2x2+⋯+hmxm
牛顿二项式定理
设α是实数,对所有满足0≤|x|<|y|的x和y有
(x+y)α=∑k=0∞(αk)xkyα−k
其中(αk)=α(α−1)⋯(α−k+1)k!
设z=x/y,则(x+y)α=yα(1+z)α 上述定理等价于
(1+z)α=∑k=0∞(αk)zk
令α=−n 负整数则有
(αk)=(−nk)=−n(−n−1)⋯(−n−k+1)k!
=(−1)kn(n+1)⋯(n+k−1)k!=(−1)k(n+k−1k)
因此对于|z|<1,有
(1+z)−n=1(1+z)n=∑k=0∞(n+k−1k)zk
当n=1,有1(1−z)=1+z+z2+⋯+zm+⋯
得1(1−z)k=(1+z+⋯+zm+⋯)⋯(1+z+⋯+zm+⋯)
令hn是e1+e2+⋯+ek=n的非负整数解的个数,ei表示上面第i个取zi
根据实际含义可以知道hn=Ck−1n+k−1
例子
(1+x+x2+x3+x4+x5)(1+x+x2+x3)(1+x+x2+x3+x4)
设xe1,xe2,xe3是三项的代表项那么e1+e2+e3=n解的个数就是最终展开合并xn的系数
同理其他的限制条件都可以写成这种形式
逆序数与排列
设b1,b2,⋯,bn满足下列整数数列
0≤b1≤n−1,0≤b2≤n−2,⋯,0≤bn−1≤1,bn=0
一定存在一个唯一对于的排列{1,2,⋯,n}使得逆序列是{bi}
构造算法(倒着根据bi 放):
n:写出n
⋯:⋯
i:考虑bi,bi是0,所有比他大的都在右边
⋯:⋯
1:考虑b1,⋯
指数生成函数
g(e)(x)=∑∞n=0hnxαn!=h0+h1x+h2x22!+⋯+hnxnn!+⋯
例子
取P(n,k)是n元素集合的k排列,数目为n!(n−k)!
g(e)(x)=∑k=0∞n!(n−k)!n!xk=(1+x)n
因此(1+x)n是数列P的指数生成函数
Catalan数
设hn表示凸(n+1)边形通过插入不相交对角线分成三角形区域的方法数
hn=h1hn−1+⋯+hn−1h1=∑k=1n−1hkhn−k(n≥2,h1=1)
则有
hn=1nCn−12n−2
简明证明
g(x)是hn的生成函数,则有g(x)2−g(x)+x=0
g(x)=g2(x)=1−1−4x√2=12−12(1−4x)12
其中再用牛顿二项式定理,可得g(x)=∑∞n=11nCn−12n−2xn