第八章 特殊计数序列 8.1 catalan 数
DESCRIPTION
第八章 特殊计数序列 8.1 Catalan 数. 前面我们已经讨论过一些特殊计数序列的例子。如:斐波那契序列 : f n = f n -1 + f n -2 ( n ≥3 ) 翰若塔问题序列: h n = 2 h n -1 + 1 ( n ≥1 ) 错位排列数序列: D 0 , D 1 , D 2 , D 3 ,… D n , …… 等 本节我们将继续研究 4 个著名的计数序列. 8.1 Catalan 数 - PowerPoint PPT PresentationTRANSCRIPT
1
第八章 特殊计数序列8.1 Catalan 数前面我们已经讨论过一些特殊计数序列的例子。
如:斐波那契序列: f n = f n-1 + f n-2 (n ≥3)
翰若塔问题序列: hn = 2hn-1+ 1 (n ≥1)
错位排列数序列: D0, D1, D2, D3,… Dn, …… 等 本节我们将继续研究 4 个著名的计数序列
2
8.1 Catalan 数 Catalan( 卡特朗 ) 序列其递推关系是非线
性的 , 许多有意义的计数问题都导致这样的递推关系。本次课将举出一些 , 后面还将见到。
通过下面的例题我们来引入 Catalan( 卡特朗 ) 序列。
例 : 二叉树(或二元树)的计数问题。如 3 个结点可有 5 棵不同的二叉树 , 如下图所
示。
3
一般地,设 cn 为 n 个结点的不同的二叉树的个数,定义 c0=1 。在 n > 0 的情形下,二叉树有一个根结点及 n-1 个非根结点,设左子树 T
l 有 k 个结点,则右子树 Tr 有 n-1-k 个结点,于是每个不同的左子树有 ck 种时,右子树有 cn-1-k种,由计数原理:
4
)0(,1
01
nccc
n
kknkn
令由序列 {cn} 构成的生成函数为: B(x) = c0 + c1x + c2x2+ c3x3+……+cnxn+…… 那么B(x)×B(x) = (c0 + c1x + …… ) (c0 + c1x +c2x2+ …… )
B2(x) = (c0)2+ (c0 c1+c1c0) x + (c0 c2+c1 c1 +c2 c0)x2+ (c0 c3+
c1 c2 +c2 c1+c3 c0 )x3+………
5
nn
kknk
nkkk
kkk
kkk
xccxcc
xccxccccxB
][......
)()(
00
33
03
22
02
1
0100
2
根据我们在第十九讲中补充的关于生成函数有 关结论可知:
)0(...... 0132
2110
1
01
ncccc
ccccccc
nn
nn
n
kknkn
6
再由于序列 {cn} 构成的生成函数可以表示为 :
比较发现与 nn
kknk
n
nnnnn
n
nn
kknk
nn
nn
xccxB
xcccccccc
xccxcxB
][)(
]......[
][)(
00
2
013221100
1
01
10
B(x) 与 B2(x) 在第 n 项的系数只相差一项
n
k
nknk
n
n
k
nknk
n
xccxcc00
1
01
0
][][ 与
7
由于它们的首项都是 1, 将 B(x) 减去常数 1 后使得和式的每个单项式的幂大于等于 1. 再除以 x后就得到生成函数为:
与 B2(x) 的序列的生成函数化成一致。 那么我们得到生成函数 B(x) 满足的方程: 其中 B(0) =c0 =1
][][1)( 1
00
1
0
11
1
n
k
nknk
n
n
k
nknk
n
xccxccxxB
)(1)( 2 xBxxB
8
解此二次方程,并应用牛顿二项式定理 (P95) 得 :
]))4(21
1(1[21
)])4(21
)4(021
(1[21
])4(21
1[21
2)41(1
2411)(
1
1
0
0
21
n
nn
n
n
n
n
xnx
xn
xx
xnxx
xxxxB
9
)(2)1(1)1(2)1(2
2)1()1(
2)1(1
21
:
2)1(1
21
2)1(21
])4(21
[21)(
9512
1)1(2
1)1(
12
0
122
1
1121
1
Pnn
n
nc
xn
xn
xnx
xB
nnn
n
nnn
n
nnn
n
nnn
n
nn
见
因此
作换元
10
nn
nnn
nc nn
n
n
n
2)1(
12)1(2
2)1()1( 12
12
这个数 Cn 常称为 Catalan( 卡特朗 ) 数 , 序列{Cn} 常称为 Catalan( 卡特朗 ) 序列。常用第一个字母 C 表示,记为: C0,C1,C2,C3,…..Cn,…… 其中,通项: ...)2,1,0(
211
nnn
nCn
11
定理 8.1.1 n 个 +1 和 n 个 – 1 构成的 2n 项数列
a1, a2, …, a2n 若其部分和满足 a1 + a2 +…+ ak≥ 0 k = 1,2,…,2n
的数列 a1, a2... ak 的个数等于第 n 个 Catalan 数,即
证明: n 个 +1 和 n 个 – 1 构成的 2n 项数列若其部分和满足 a1 + a2 +…+ ak≥ 0
...)2,1,0(2
11
nnn
nCn
12
则称该数列是可接受的数列,否则是不可接受的 数列。令 Sn 是由 n 个 +1 和 n 个 – 1 构成的
2n 项数列的全体, An 是其中可接受的部分, Un
是其中不可接受的部分 . 于是 : |Sn| = |An| + |Un|
而 : 可见,通过计算 |Un| 进而计算出 |An|; 对每个不可接受序列,总可以找到最小的正奇数 k ,使得 ak=-1 且 ak 之前的 +1 与 -1 的个数相等,即有 a1+a2+…+ak-1=0, ak =-1 。
nn
Sn2
13
例 : -1+1-1+1-1+1-1+1-1+1…….. 其中 a7 = -1
现将这个不可接受序列中前 k 项的每一项取反号, 其余部分保持不变, 得到新序列变为 m+1 个+1 和 m-1 个 -1 构成的序列。
例 : 1-1+1-1+1-1+1+1-1+1…….. 注意有两个 1 连加 反之,对任一由 n+1 个 +1 和 n-1 个 -1 构成的序列,
从左到右扫描,当 +1 的个数第一次比 -1 的个数多1 时就把这些扫描到的项全部取反号,其余
,,...,, 221 naaa
14
项不变,结果又得到 n 个 +1 和 n 个 -1 构成的不可接
受序列。从而,易知不可接受序列的数目 Un
就与 n+1 个 +1 和 n-1 个 -1 所成的序列的数目相等。由于后者的数目为:
nn
nnnnn
nnnnn
nnnnn
nnn
nnn
nnn
nn
USA
nnnU
nnn
n
211
11
!!)!2()
)1(1(
)!1(!)!2(
)111(
)!1(!)!2(
)!1()!1()!2(
!!)!2(
)!1()!1()!2(2
)!1()!1()!2(
那么
15
Catalan 数的组合学意义可罗列如下: ( 1 )从 (0 , 0) 点沿第一象限的格线到 (n,
n) 点的不穿越方格对角线的最短路径数; ( 2 ) 序列 a1a2…ak 的元素顺序保持不变,
按不同结合方式插入合法圆括号对的方案数; ( 3 ) 用 n-1条互不交叉的对角线把 n+2条边 (n≥1) 的凸多边形拆分三角形化的方法数;
16
( 4 ) 2n 个人排队上车,车票费为 5 角, 2n个人
中有一半人持有一元面值钞票,一半人持有 5 角钞票,求不同的上车方案数,使得在这些方案中售票员总能用先上车的购票钱给后上车者找零;
( 5 ) 甲、乙二人比赛乒乓球, 最后结果为n∶n ,比赛过程中甲始终不落后于乙的计分种数;
17
( 6 ) n 个点的有序二叉树的个数; ( 7 ) n 个叶子的完全二叉数的个数; ( 8 ) 圆周上 2n 个点连接成的 n条两两互
不相交的弦分割圆的方案数。 以上 8 种类型的计数问题 , 是典型的 Cat
alan 数组合问题,我们仅仅对其中的部分问题进行讨论;
18
(1) 从 O(0,0) 点沿第一象限的格线到 N(n,n) 点的 不穿越方格对角线 ON 的最短路径数; 沿格线前进不穿越对角线 (但可接触对角线上的
格点 ) 的路线分为走对角线上方或走对角线下方两种情形,由对称性,易知两种路线数相等。 因此,只需计算走一方的路线数 ( 不妨计算对角线下方的路线数 ) 。
设符合题意的路线为好路线,其总数记为 gn ;
19
即 :遇到对角线就向右 ; 穿越对角线的路线记为 坏路线,其总数记为 bn 。 (a) 图是 4×4 方
格中的坏路线, (b) 图是 4×4 方格变为 5×3 方格的后的路线。
(a ) (b )
O
N
N
O
20
易知 n×n 方格上从左下角到右上角的每一条路 线可用一个包含 n 个 R( 右 ) 和 n 个 U
(上 ) 的字符串来描述。例如下图所示的路线可用字符串 RUURRURU共 8 个字符来表示,可以看出, R 和 U 的数量各占一半。这样的字符串可以由在给定的 2n 个位置中为 R
选择 n 个位置而不考虑顺序,其余 n 个位置填入 U 。于是,
21
有 C(2n,n) 种可能的路线。且有 gn+bn=C(2n, n) , 即: gn=C(2n, n)-bn, 故只需计算坏路线数 bn 。 对任一坏路线,选定最初穿越对角线后的第
一次移动,并将此移动之后的右行改为上行,上行改为右行,这样的变化使得向上移动增加一个而向右移动减少一个 , 即可得到一条 (n+1)×(n-1) 方格上从左下角走到右上角不加限制的路线;反之, 对任一 (n+1)×(n-1) 方格
22
上从左下角走到右上角不加限制的路线,从最 初位于对角线上方的第一点起,改上移为
右移,改右移为上移,即可得到一条 n×n 方格上 ( 从 (0,0) 点到 (n,n) 点 ) 的坏路线。亦即 , n×n 方格上的坏路线与 (n+1)×(n-1) 方格上的路线之间存在一一对应。由于 (n+1)×(n-1) 方格的路线为 : C(2n, n+1) 或 C(2n, n-1) ,两者相等 , 故取 bn=C(2n, n-1) 。从而有:
23
),2(11
11
!!)!2(
)1(1
)!1(!)!2(
111
)!1(!)!2(
)!1()!1()!2(
!!)!2(
)1,2(),2(),2(
nnCnnnn
nnnnn
nnnnn
nnnn
nnn
nnCnnCbnnCg nn
注意,在求对角线下方的好路线数时,每条走过对角线上方的路线都作为坏路线计入了 bn 。进而,仅走对角线一侧且不穿越对角线 的总路径数为 Catalan 数:
n
nn
nnCn
211),2(
11
24
( 3 )用互不交叉的对角线把 n+1条边 (n≥2) 的 凸多边形三角形化分的方法数;
v k
v k£«1
v k£1 F 1
v 1e
F 2
v k£«2
v n
v n £«1
余点依次相邻标记
25
令 hn 表示将 n+1(n≥2)边凸多边形进行三角
形拆分的方案数,则当 n=1 时, h1=1 ,当 n≥3 时,任取多边形一边为基边记作 e ,其两端点一端记为 v1 ,一端记为 vn+1 ,余点依次相邻标记如图所示。现以 v1 , vn+1 及任意顶点vk+1(k=1,2,…,n-1) 构作一个三角形,该三角形将凸多边形分为 F1, F2 两个区域。
26
其中, F1 由 k+1边凸多边形围成,其三角形拆分 方案数为 hk , F2 由 n-k+1边凸多边形围成,其三
角形剖分方案数为 hn-k , F1 与 F2 的边数关系是 :
[(k+1)+(n-k+1)+1]-2 = n+1( 总边数 )
v k
v k£«1
v k£1 F 1
v 1e
F 2
v k£«2
v n
v n £«1
27
由乘法原理知
易证
对于六边形时 , 即当 n=5 时 , 可求得分拆三角形数 :
1
1
n
kknkn hhh
n
nn
hn
nn
h nn
211
1
2211
1448
51
15
25251
5
h
28
凸 6边形 (n=5) 的 14 个拆分方案
其中从同一顶点引出 3条对角线的有 6 种;从两个顶点各引出 2条对角线的又有 6 种;从 3个互不相邻点连接的有 2 种,共 14 种。
29
下面证明 Catalan 数满足 1阶齐次递推关系;
由于 所以有:
1)1(124
124)12)(2(
11
)!1()!1()!22(1!!)!2(
11
01
1
CnCnnC
nn
nnn
n
nnn
n
nnn
nCC
nn
n
n
所以
1
2 2( 1)1 111n n
n nC C
n nn n
30
我们可义求出前几项的 Catalan 数的数值: C0 = 1 , C1 = 1 , C2 = 2 , C3 = 5
C4 = 14 , C5 =42 , C6 = 132, C7 =429
C8 =1430, C9 = 4862 ,…………….
现在我们定义一个新的数列:
为了方便给它取名叫做拟 - Catalan 数。令:,........,......,, **
3*2
*1 nCCCC
,.....)3,2,1(! 1* nCnC nn
31
将 Catalan 数的递推关系代入得到拟 -Cat
alan 数的递推关系:
111!1: 0*1 CC我们有初值
*12
221*
)64(])!1)[(64(
64!1)1(2)1(4!!
nn
nnnn
CnCnn
CnnnC
nnnCnC
这样,拟 -Catalan 数的递推关系和初值如下:1
)2()64(*1
*1
*
C
nCnC nn
32
利用这个递推关系,可以计算前几个 拟 -Catalan 数:
3024012
16802
1201
*4
*3
*4
*2
*4
*1
CC
CC
CC
我们还可以求出拟 -Catalan 数的计算公式:
1
22)!1(
1)1(2
1)1(1!! 1
*
nn
nnn
nnCnC nn
33
例:设 a1,a2,…,an 是 n 个数 。定义这些数的一种 乘法格式是指 a1,a2,…,an 任意两个或者它们部
分积之间的 n-1 种乘法运算的方案。计算 n 个数的不同乘法格式的个数。
分析:设 hn 是 n 个数的不同乘法格式的个数。 那么 : h1 = 1 , 一个数的乘法格式 ;
h2 = 2 , 两个数的乘法格式 ; (a1×a2) 和 (a2×a1)
34
h3 = 12 , 三个数的乘法格式 ;
(a1×(a2×a3)), (a2×(a1×a3)),(a3×(a1×a2))
(a1×(a3×a2)), (a2×(a3×a1)),(a3×(a2×a1))
((a2×a3)×a1), ((a1×a3)×a2), ((a1×a2)×a3)
((a3×a2)×a1), ((a3×a1)×a2), ((a2×a1)×a3)
看得出 , 三个数的乘法格式都需要两次乘法 ,两组括号因子 , 每种格式的乘法就对应一括号
35
内的因子 , 一般说来每个乘法格式都可以通过以 看成是由某种规定顺序列出: a1,a2,a3, ….an 而
后插入 n-1 对括号和 n-1 个 × 号使得每对括号都指定两个因子的乘积 , 例如其中就有 :
(a1×(a2×(a3×(a4×(a5×(a6 ×….)))…..))
一种乘法格式。 我们利用归纳法来验证递推关系:
36
i) 取 a1,a2, a3,….an-1 的一种乘法格式 ( 它有 n-2 次乘
法和 n-2 组括号 ), 将 an 插入到 n-2 个乘法运算中任一个 × 号两侧的任一侧,有: 2×(n-2)
种;对于任一个乘法因子 ( 括号 ) 由分左右两侧,所以共有 : 2×2×(n-2) 种
ii) 取 a1,a2, a3,….an-1 的一种乘法格式 , 将 an放到整个表达式两侧的任一侧。又有 2倍种。
37
由 h3 = 12,分析任一中乘法格式 (a1×(a2×a3)),
可以有 10 个位置插入 a4 故 h4 = (4*4- 6)*12=
120
由此可见,序列 { hn} 与拟 -Catalan 数有相同的递推关系,故有:
则: hn=2×2× (n-2) ×hn-1+2×hn-1
从而 hn= (4n-6) hn-1 n≥ 2
2 2( 1)! 1
1n n
nh C n n
n
38
上例中我们只考虑了对以规定顺序 a1,a2, a3,….an
列成的 n 个数的那些乘法格式进行计数 , 例如统计了: a1,a2, a3 而没有考虑 a2,a3, a1; 令 gn 是表示带有这种附加限制的乘法格式数 , 将这 n 个数全排:
hn= n! gn, 因此,我们有:
1221
122
!)!1(
!!
*
nn
nnn
nn
nC
nhg nn
n
39
这个序列关系与凸 (n+1)边形区域通过在区域内插 入 n 个不相交的对角线而分成三角形区域的方
法数相同。
a1
a2
a3
a4
a5
a6
a7
(((a1a2)(a3(a4a5)))(a6a7))
(a4a5)
(a1a2)
(a3(a4a5))
(a6a7)((a 1a 2)(a 3(a
4a 5)))
这是 n=7 的情况
因为构造三角形的三个顶点没有次序区分 .
40
总 结 本次课我们介绍了 Catalan 数序列和 拟 -Catalan 数序列等知识。由于它们的递推
关系是非线性的,生成函数和序列通项显的比较特殊。可以牢记 Catalan 数序列和拟 -Catala
n 数序列的固定公式。
41
本次授课到此结束作业如下 : P193
1, 3, 4
1. 设在圆上选择 2n 个(等间隔的)点。 证明将这些点成对连接起来使所得到的 n条线段不相交的方法数等于第 n 个 Catalan
数 Cn 。
42
3.写出四个数的所有乘法格式并对应它们的凸五边形的三角形分拆。
4.确定对应下列乘法格式的凸多边形区域的三角形划分。
i) (a1×(((a2×a3)×(a4×a5) )×a6))
ii) (((a1×a2)×(a3×(a4×a5))×((a6×a7) ×a8))
43
下次上课内容: 8.2 差分序列和 Stirling 数 (一)