组合数学 第4章 递推关系与母函数
组合数学(引论)

组合数学中有二个常用的技巧: 1. 一一对应 2. 奇偶性
1.、一一对应
第 10 页
结束
1. 一一对应
二个事件之间如计果算存:在一一对应关系,则
可用解易解的来替代第难一解轮的:。50场比赛 (一人轮空)
应用举例 第二轮: 25场比赛 (一人轮空)
决出例冠1军. 共有要10进1行个注反一多选第第第意之场少手三四五:,比场参轮轮轮每要赛比加:::场淘。赛象1比汰63?棋3场场场赛一淘比比比必 人汰赛赛赛淘也赛汰必,((一 一一须问人 人人进要轮 轮,行空 空))
结束
3. 幻方
3. 幻方
2)麦哲里克方法 (与德拉鲁布方法类似)
将1置正中央上方,然后按向右上方的方向依次放后 继数; 到顶行后翻到底行,到达最右列后转最左列; 其余情况放正上方2格。
第 22 页
结束
3. 幻方
3. 幻方
2)麦哲里克方法 (与德拉鲁布方法类似)
将1置正中央上方,然后按向右上方的方向依次放后 继数; 到顶行后翻到底行,到达最右列后转最左列; 其余情况放正上方2格。
第4章 Burnside引理与Polya定理
4.1 群的概念 4.2 置换群 4.3 循环、奇循环与偶循环 4.4 Burnside引理 4.5 Polya定理 4.6 鸽巢原理 4.7 鸽巢原理举例 4.8 鸽巢原理的推广 4.9 Ramsey数
第4页
结束
一、一组、合组数合学数简学介简介
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
总统 副总统 财务大臣 秘书
0
1
2
2
43
2
1
一种选法 一一对应 一个四位数
组合数学(第二版)递推关系

递推关系
其次,证明an 是通解.若给定一组初始条件
可以仿照齐次方程通解的证明方法,证得相应于条件式 (3.2.11)的解一定可以表示为式 (3.2.10)的形式.
关于 的求法已经解决,这里的主要问题是求式(3.2.2) 的特解an * .遗憾的是寻求特 解还没有一般通用的方法.然而, 当非齐次线性递推关系的自由项f(n)比较简单时,采用 下面的 待定系数法比较方便.
递推关系 【例 3.4.2】 棋盘染色问题:给一个具有1行n 列的1×n
棋盘(见图3.4.1)的每一个 方块涂以红、蓝二色之一,要求相 邻的两块不能都染成红色,设不同的染法共有an 种,试 求an.
图 3.4.1 1×n 棋盘
递推关系
递推关系
【例3.4.3】 交替子集问题:有限整数集合Sn={1,2,…,n} 的一个子集称为交替的, 如果按上升次序列出其元素时,排列 方式为奇、偶、奇、偶、…….例如{1,4,7,8}和 {3,4,11}都是, 而{2,3,4,5}则不是.令gn表示交替子集的数目(其中包括空集), 证明
且有gn=Fn+2.
递推关系
证 显然,g1=2,对应S1 的交替子集为⌀和{1}.g2=3,对应S2 的交替子集为⌀、 {1}、{1,2}.
将Sn 的所有子集分为两部分: (1)Sn-1={1,2,…,n-1}的所有子集; (2)Sn-1的每一个子集加入元素n 后所得子集. 例如,n=4,S4={1,2,3,4}的所有子集划分为两类,即 (1)⌀、{1}、{2}、{3}、{1,2}、{1,3}、{2,3}、{1,2,3}; (2){4}、{1,4}、{2,4}、{3,4}、{1,2,4}、{1,3,4}、 {2,3,4}、{1,2,3,4}.
递推关系与母函数法

递推关系与母函数法1.2 递推关系Hanoi塔问题:这是组合数学中的著名问题。
n个圆盘依其半径大小,从下而上套在柱A上,如图1.1所示。
每次只允许取一个转移到柱B或柱C上,而且不允许大盘放在小盘上方。
若要求把柱A上的n个盘转移到柱C上,请设计一种方法,并估计要移动几个盘次,现在只有A,B,C三根柱子可供使用。
设a,b,c是3个塔座。
开始时,在塔座a上有一叠共n个圆盘,这些圆盘自下而上,由大到小地叠在一起。
各圆盘从小到大编号为1,2,…,n,现要求将塔座a 上的这一叠圆盘移到塔座b上,并仍按同样顺序叠置。
在移动圆盘时应遵守以下移动规则:规则1:每次只能移动1个圆盘;规则2:任何时刻都不允许将较大的圆盘压在较小的圆盘之上;规则3:在满足移动规则1和2的前提下,可将圆盘移至a,b,c中任一塔座上。
图1.1Hanoi塔是个典型的问题,第一步要设计算法,进而估计它的复杂性,即估计工作量。
这一问题有典型的意义,第一步先解决算法问题,即如何完成n个盘的搬动,进一步还要对算法作出复杂性分析,即对要作多少盘次的搬动进行估计。
算法设计:n=时,第一步先把最上面一个圆盘套在柱B上;第二步把第二个圆盘转2移到柱C上;最后再把柱B上的一个圆盘转移到柱C上,到此转移完毕。
假定1n-个盘子的转移算法已经确定。
对于一般n个圆盘的问题,先把上面的1n-个圆盘转称到柱B上,再把最后一上圆盘转移到柱C上,然后把柱B上的1n-个圆盘转移到柱C上,转移完毕。
上述的算法是递归的连用。
2n=时,第一步便利用n=时已给出了算法;3算法把上面两个圆盘移到柱B上,第二步再把第三个圆盘转移到柱C上;最后把柱B上的两个圆盘转移到柱C上,4,5,,n= 以此类推。
图1.1形象地给出4n=的转移过程。
void hanoi (int n, int a, int b, int c) {if (n > 0) {hanoi (n-1, a, c, b); move (a,b);hanoi (n-1, c, b, a); } }算法分析:令n h 表示n 个圆盘所需要的转移盘次。
组合数学(4)递推递归母函数

ACM 暑期集训 组合数学(4) 递推 递归 母函数1 递推关系序列{a n }=a 0,a 1,…,a n ,…,把 a n 与某些a i (i <n )联系起来的等式叫做关于序列{a n }的递推方程。
当给定递推方程和适当的初值就唯一确定了序列。
递推关系分类: (1)按常量部分:齐次递推关系:指常量=0,如F(n)=F(n-1)+F(n-2) 非齐次递推关系:指常量≠0,如F(n)=2*F(n-1)+1 (2)按运算关系:线性关系,如上面的两个;非线性关系,如F(n)=F(n-1)*F(n-2)。
(3)按系数:常系数递推关系,如(1)中的两个;变系数递推关系,如D(n)=(n-1)(D(n-1)+D(n-2)。
(4)按数列的多少一元递推关系,只涉及一个数列,上面的均为一元; 多元递推关系,涉及多个数列,如⎩⎨⎧+=+=----111177n n nn n n a b b b a a Fibonacci 数列为1,1,2,3,5,8,13,.....long long data[100]; data[1]=1; data[2]=1;for(int i=3;i<=50;i++) data[i]=data[i-1]+data[i-2]; while(cin>>n) cout<<data[n]<<endl;例1:直线割平面问题。
在一个无限的平面上有N 条直线,试问这些直线最多能将平面分割成多少区域?F(1) = 2; F(2) = 4; F(3) = 7; F(n)=F(n-1)+n; (n>1)int recurrence(int n) //递推 {f[1]=2;for(i=2;i<=n;i++) f[n]=f[n-1]+n; return f[n]; }int recursion(int n) 递归: {if(n==1) return 2;//递归终止条件 else return recursion(n-1)+n; }更快的方法是求出通项:F(n)=n^(n+1)/2+1例2:HDOJ2050 折线割平面问题在一个无限的平面上有N 条折线,试问这些折线最多能将平面分割成多少区域?F(n)=F(n-1)+4n-3; F(n)=2*n^2-n+1;例3:椭圆割平面问题。
《母函数与递推关系》PPT课件

ak
ቤተ መጻሕፍቲ ባይዱ
7 8k1 2
9 10k1 2
验证:a1=8,a2=73
15
§2.2 递推关系
例三:从n个元素a1,a2,….an中取r个进行允许重
复的组合。假定允许重复的组合数用 C(n表, r)
示,其结果可能有以下两种情况。
1)不出现某特定元素设为a1,其组合数 为 C(,n 相1, r当) 于排除a1后从a2,….an 中取r个做 允许重复的组合。
h(1) 1, h(2) 2h(1) 1, h(3) 2h(2) 1,
(1 2x)H ( x) x x2 x3 x /(1 x)
H (x)
x
(1 2x)(1 x)
8
1
H (x) h(k )xk
x
g(x)=1+x+x2+x3+x4+... =
k 1
(1 x)(1 2x)
(1 x)Gn ( x) Gn1( x) 0
系数(1-x)不是常数。但
G1(x) C(1,0) C(1,1)x C(1,2)x2
1 x x2 1
Gn
( x)
1
1
x
Gn1( x)
1 1x (1 x)2
Gn2
(x)
1 (1- x)n-1
G1 ( x)
1 (1- x)n
17
(1 x) 1 x ( 1) x2
尾数不是为5的:9an-1
尾数为5的,前n-1位有奇数个5:bn1 9 10n2 an1
an 9an1 9 10n2 an1
an 8an1 9 10n2 ,
a1 8
x2 : a2 8a1 9 x3 : a3 8a2 90
组合数学 母函数与递推关系

§2.1 母函数 用类似的方法还可以得到:
C (n,1) x 2C (n,2) x 2 3C (n,3) x 3 nC (n, n) x nx(1 x)
n
2 2
n 1
C (n,1) 2 C (n,2) 3 C (n,3) n C (n, n)
2 3 2
§2.2 递推关系 整理得
x x (1 2 x) H ( x) x 1 x 1 x
这两种做法得到的结果是一样的。即:
2
x H ( x) (1 x)(1 2 x)
§2.2 递推关系 如何从母函数得到序列 (1), h(2), ?下 h 面介绍一种化为部分分数的算法。
(1 x) n
§2.2
递推关系
利用递推关系进行计数这个方法在算法 分析中经常用到,举例说明如下: 例一.Hanoi问题:这是个组合数学中的 著名问题。N个圆盘依其半径大小,从下而 上套在A柱上,如下图示。每次只允许取一 个移到柱B或C上,而且不允许大盘放在小 盘上方。若要求把柱A上的n个盘移到C柱上 请设计一种方法来,并估计要移动几个盘 次。现在只有A、B、C三根柱子可用。
C (m n, m) C (n,0)C (m,0) C (n,0)C (m,0) C (n,0)C (m,0) 正法如下: (2 - 1 - 3)
m n
(1 x) (1 1 / x) x (1 x)
n m
m
§2.1 母函数
[C (n,0) C (n,1) x C (n, n) x ]
h(2) x h(3) x H ( x) h(1) x H ( x) x
2 3
右端第一项为:
递推关系与母函数 - 哈尔滨工程大学智能信息处理研究中心

n r
' n ' n ' n B m B m ... B m r 成立,则称 1 1 2 2 r
是递推关系式1的通解,其中:B1’ , B2’ ,…, Br’是任意常数
9
无重特征根
定理:设m1,…,mr是递推关系式1的r个互不相 等的特征根,则:
a n B 1 m B 2 m ... B r m
智能信息处理研究中心(RCIIP)
递推关系与母函数
潘海为
1
递推关系的建立
例6 10个数字(0~9)和4个运算符(+,-,,) 组成 14个元素,求由其中的n个元素构成的排列组 成的算术表达式的个数(含除数为0的情况)
an = 10an-1+ 40an-2 a1 =10,a2=120
若e(n) = 0,称其为齐次递推关系式 若e(n)≠0,称其为非齐次递推关系式 当ci(n)=ci时(i =1,2,…,r)称为常系数递推关 系
4
常系数齐次线性递推关系a n1 c2 a n 2 ... cr a n r 0 其中: cr 0
其中: n r , cr 0
当e(n) = 0时,齐次递推关系式的情况 当e(n)≠0时,非齐次递推关系式的情况
16
定理
r 阶线性常系数非齐次递推关系的通解an是: 该非齐次递推关系的一个特解 a n ,加上其相 应的齐次递推关系的通解 a n 即
*
ana
* n
an
17
非齐次递推关系
18
非齐次递推关系
求解过程
求齐次递推关系的通解 求非齐次递推关系的特解 列出非齐次递推关系的通解形式 根据初始条件确定待定系数
组合数学 第四章2母函数的性质

§4.3 在选优法上的应用
可见做两次试验,至少可把区间缩至原来区
间的2/3,比如
f (,x1)进一f 步(x2在)
(a, x区2 ) 间上找极值点。若继续用三等分法,
将面对着这一实事即其中 点的x1 试验没发挥其
作用。为此设想在 区间(0的,1)两个对称点
分别x做,l 试 x验。
0 lx x 1
§4.3 在选优法上的应用
__________ __________ ____ ) Fn2 Fn(Fn1 Fn1) FnFn1 Fn1Fn
F12 F 22 Fn2 Fn Fn1
§4.3 在选优法上的应用
设函数 y f (x) 在区间 (a,b) 上有一单峰
极值点,假定为极大点。
所谓单峰极值,即只有一个极值点 ,而且
设保留(0, x) 区间,继续在 (0, x) 区间的下面 两个点 x2, (1 x)x 处做试验,若
x2 1 x
则前一次1 x 的点的试验,这一次可继续使
用可节省一次试验。
x2 x 1 0
x 1 5 0.618 2
0 0.382 (0.618)2 0.618
1
§4.3 在选优法上的应用
______________
F2n F2n2
F1 F3 F5 F2n1 F2n
§4.3 若干等式
3) 证明:
F12
F
2 2
F12 F2F1
Fn2 Fn Fn1
F22 F2 (F3 F1) F2F3 F2F1
F32 F3 (F4 F2 ) F3F4 F2F3
§4.2 母函数的性质
例. A(x) sin x x x3 x5 3! 5!
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4.2.2 指数母函数 §4.1 指数母函数概念
定义 4.3
给定一无穷序列(a0,a1,…an,…)(简记为{an}),称
函数 fe ( x) ai
i0
xi i!
为序列{an}的指数母函数。
注: fe(x)也是形式幂函数。 经常可结合以下公式运算:
e x 1 x 2 x2 ... n xn ...
4.2.1 普通母函数
例题
例2、求序列(0, 1×2×3, 2×3×4,…, n(n+1)(n+2),…)的普通母函数。
解:由牛顿二项式定理的推论1.10.4,有
1
xn
1 x n0
将上式两端同时微分两次得
2
n(n 1)xn2
(1 x)3 n2
将上式两端再微分得
6 (1 x)4
n(n 1)(n 2)xn3
1! 2!
n!
ex 1 x x2 ... (1)n xn ...
1! 2!
n!
sin x x x3 ... x2n1 ... e x e x
1! 3!
(2n 1)!
2
1
xn
1 x n0
§4.2§4母.1函指数数母的函基数本例概5 念
4.2.2 指数母函数
例题
例3、设n是整数,求序列(p(n,0), p(n,1), …, p(n,n))的指数母函数fe(x)。
an an1 2(n 1) (n 2)
a1 2
求解这个递推关系可以得到问题的解答。
§4.1 递推关§系建4.立1例递2-1推关系的建立
例题
例3、“Hanoi塔”问题:n个大小不一的圆 盘依半径的大小,从下而上的套在柱子A上。 如图所示。现要求将所有的圆盘从柱子A上 全部移到柱子C上,每次只允许从一根柱子 上转移一个圆盘到另一根柱子上,且在转移
解关:系要即求可§解。4.1这递个推问关题系§建,4立.首1例先递1-必2推须关建系立的递推建关立系,然后求解递推
设这n条直线将圆分成的区域数为an,如果有n-1条直线将圆分 成相a交n例-。1个显区题然域,,这那条么直再线加在入圆第内n条被直分线成与n条在线圆段内,的而其每他条n-线1条段直又线将 第n条直线在圆内经过的区域分成两个区域。这样,加入第n条 直线后,圆内就增加了n个区域。而对于n=0,显然有a0=1,于 是对于每个整数 n,可以建立如下带初值的递推关系
§4.1 错排问题定理5 练习
错排
如{a1,a2,…an}为{1,2,…,n}的一排列,对所有 的i,有ai≠i,称这种排列为错排Dn 。
Dn=(n-1)(Dn-1+Dn-2),(n≥3)
§4.1
递推关系定义
§4.1 递推关系的建立
定义 4.1
设{an}为一序列,把该序列中an和它前面几个ai (0≤i≤n-1)关联起来的方程称做一个递推关系
组合数学
主讲人:苏建忠 地址:系统生物学教研室
第4章 递推关系与母函数
本章主要介绍递推关系的建立及几种 常见的求解方法:
• 母函数法 • 常系数齐次递推关系 • 常系数非齐次递推关系
§4.1 递推关系§建4立.1例递1-1推关系的建立
例题
例1、在一个平面上有一个圆和n条直线, 这些直线中的每一条在圆内都同其他的直 线相交。如果没有多于三条的直线相交于 一点,试问这些直线将圆分成多少个不同 区域?
过程中不允许出现大圆盘放到小圆盘上。试
问至少要转移多少次才能将柱子上的n个圆 盘全部转移到柱子C上去?
§4.1 递推关§系建4.立1例递2-2推关系的建立
解:用Hn表示从一根柱子上的n个圆盘全部转移到另一根柱子 上的例转移题次数。显然,H1=1, H2=3。当n≥3时,要将柱子A上 的n个圆盘转移到柱子C上,可以这样设想。先把柱子A上的n-1
数 f ( x) ai xi 为序列{an}的普通母函数(发生、
生成函数)i 0。
注: f(x)是无穷级数,不管其收敛性; x为形式变元,f(x)为形式幂级数 ; 序列与母函数一一对应; 母函数是序列的另一表达形式; 有限序列也可用母函数表示。
§4.2 §母4.函1 普数通的母函基数本例1概念
4.2.1 普通母函数
例题
例 1 、 求 序 列 (C(n,0),C(n,1),C(n,2),…, C(n,n))的普通母函数。
解:由定义4.1及二项式定理的推论1.9.2有
f (x)
n 0
n 1
x ...
n n
xn
(1 x)n
§4.2§母4.1函普数通的母基函数本例概4 念
an an1 n (n 1)
a0 1
求解递推关系得an
n2
n 2
2
§4.1 递推关系的建立
例题
例2、在一个平面中,有n个圆两两相交, 但任二个圆不相切,任三个圆无公共点,
求这n个圆把平面分成多个区域?
解:设这n个圆将平面分成an个区域。 如图。易见 ,a1=2, a2=4。 现在假设前n-1个圆将平面分成了an-1 个区域,当加入第n个圆时,由题设 这个圆与前面的n-1个圆一定交于 2(n-1)个点,这2(n-1)个点把第n个圆 分成2(n-1)条弧,而每条弧正好将前 面的 n-1个圆分成的区域中的其经过 的每个区域分成2个区域,故新加入的第n个圆使所成的区域数 增加了2(n-1) 。因此可以建立如下带初值的递推关系:
个月起每月产一对兔子。试问第n个月后养 殖场中共有多少对兔子?
§4.1 递推关§系4建.1立递例3推-2 关系的建立
解:设第n个月时养殖场中兔子的对数为Fn。并定义F0=1, 显由然于例有在, 第题Fn个1=月1。时,除了有第n-1个月时养殖场中的全部兔子 Fn-1外,还应该有Fn-2对新兔子,这是因为在第n-2个月就已 经有的每对兔子,在第n个月里都应生一对新的兔子。因此 可以建立如下带初值的递推关系
Hn 2Hn1 1 (n 2) H1 1
求递3-1推关系的建立
例题
例4、“Fibonacci兔子问题”也是组合数学 中的著名问题之一。这个问题是指:从某
一年某一月开始,把雌雄各一的一对兔子
放入养殖场中,从第二个月雌兔每月产雌
雄各一的一对新兔。每对新兔也是从第二
(递归关系)。
如错排数Dn=(n-1)(Dn-1+Dn-2),(n≥3) 和关系式an=3an-1,(n≥1)都是递推关系。
如a0=d0 , a1=d1,…, ak=dk,di为常数(i=0,1,…,k),称为递推 关系的初值。
如D1=0, D2=1作为初值即可惟一的确定序列(D0,D1,…, Dn,…),a0=1作为初值即可惟一的确定序列(1,3,32,…,3n,…)。
解:由定义4.2及公式P(n,r)=r!C(n,r),以及例1的
结论,有
fe ( x)
p(n, 0)
p(n,1) x ... 1!
p(n, n)
xn n!
n 0
n 1
x ...
n n
xn
(1 x)n
§4.2§4母.1函指数数母的函基数本例概7 念
4.2.2 指数母函数
例题
Fn Fn1 Fn2 (n 2)
F0 1, F1 1 求解上式可以得到我们所需的答案。 注:利用该式我们可以推得
(F0,F1,…,Fn,…)=(1,1,2,3,5,8,13,21,34,55,…) 常称Fn为Fibonacci数, (F0,F1,…,Fn,…)为Fibonacci数列。 Fibonacci数列在数学中是一个奇特而又常见的序列,它在算 法分析中起着重要的作用。具体性质以后讨论。
个圆盘转移到柱子B上,这需要转移Hn-1次;然后把柱子A上最 后一个圆盘转移到柱子C上,显然这需要转移一次;最后再把
柱子B上的n-1个圆盘转移到柱子C上,这也需要转移Hn-1次。 经过这些步骤后,所有A上的n个圆盘就全部转移到柱子C上。
由加法法则,这一共转移了2Hn-1+1次。于是可以建立如下带初
值的递推关系
例4、求序列{1,α,α2,…,αn,…}的指数母函数 fe(x)。其中α是实数。
解:由定义4.2,有
fe ( x)
1
x 2
1!
x2 2!
... n
xn n!
...
e x
特别地:若 =1,则序列(1,1,…,1,…)的指数母函数为ex 。
n3
两边同乘以x得
6x (1 x)4
n(n 1)(n 2)xn
n0
0 1 2 3x 2 3 4 x2 ... n(n 1)(n 2)xn ...
因此
f
(
x)
(1
6x x)4
是序列(0,1
2
3,2
3
4,
...,
n(n
1)(n
2),
...)
的普通母函数。
§4.2 母函数的基本概念
将递推关系和初值结合起来称为带初值的递推关系。如
Dn (n 1)(Dn1 Dn2 )
D1 0, D2 1
(n 3),
an 3an1 a0 1
(n 1)
§4.2 普通§母函4.数2概母念函数的基本概念
4.2.1 普通母函数
定义 4.2
给定一无穷序列(a0,a1,…an,…)(简记为{an}),称函