生成函数小记

普通型母函数##

母函数就是一列用来展示一串数字的挂衣架。
——赫伯特·唯尔夫 [1] 。

生成函数,又称母函数,是数学中,尤其是组合计数中重要的工具
定义如下:

对于任意数列{\(a_n\)},如果用如下函数联系起来:
\(G(x) = a_0 + a_1 x^1 + a_2 x^2 + a_3 x^3+......+a_n x^n\)
那么称\(G(x)\)是数列{\(a_n\)}的生成函数

普通型母函数的一般形式:\(G(x) = \sum_{i = 0}^{\infty} a_ix^i\)

比较特别的
数列\(C_n^0,C_n^1,C_n^2,......,C_n^n\)的生成函数为\(G(x) = (1 + x) ^ n\)【二项式定理】

应用##

这个函数有什么作用呢?
最直观地说,可以用来组合计数

比如,你有硬币1元,2元,3元各一枚,你想知道能凑出什么面额,以及方案数
那么我们令\(G(x) = (1 + x^1)(1 + x^2)(1 + x^3) = 1 + x^1 +x^2 + 2 * x^3 + x^4 + x^5 + x^6\)
你会发现,展开后每一项的指数代表面额,其对应系数就是方案数

类似的,如果1元纸币有多枚,其括号内就可以写成\((1+x^1+x^2+x^3+......+x^n)\),分别表示1元硬币取0枚,1枚,2枚.......

再比如说,掷一次骰子,有\(1,2,3,4,5,6\)共6中情况
问掷n次的总和有哪些,各有多少种方案?
那么可以构造生成函数:
\(G(x) = (x^1 + x^2 + x^3 + x^4 + x^5 + x^6)^n\)
显然展开后就能得到答案

【更多的应用先留坑】

posted @ 2018-03-27 21:33  Mychael  阅读(311)  评论(1编辑  收藏  举报