卡塔兰数列总结
卡特兰数总结Catalan Number原理h(0)=1, h(1)=1,h(2)=2,h(3)=5,h(4)=14,h(5)=42,h(6)=132,h(7)=429,h(8)=1430,h(9)=4862,h(10)=16796,h(11)=58786,h(12)=208012,h(13)=742900,h(14)=2674440,h(15)=9694845······令h(0)=1,h(1)=1,catalan数满足递推式[1]:h(n)=h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (n>=2)例如h(2)=h(0)*h(1)+h(1)*h(0)=1*1+1*1=2h(3)=h(0)*h(2)+h(1)*h(1)+h(2)*h(0)=1*2+1*1+2*1=5 另类递推式: h(n)=h(n-1)*(4*n-2)/(n+1);递推关系的解为: h(n)=C(2n,n)/(n+1) (n=0,1,2,3,...)递推关系的另类解为: h(n)=C(2n,n)-C(2n,n+1)(n=0,1,2,3,...)Catalan数在组合计算中的应用1、矩阵链乘: P=a1×a2×a3×……×an,依据乘法结合律,不改变其顺序,只用括号表示成对的乘积,试问有几种括号化的方案?思路:可以这样考虑,首先通过括号化,将P分成两个部分,然后分别对两个部分进行括号化。
比如分成(a1)×(a2×a3.....×an),然后再对(a1)和(a2×a3.....×an)分别括号化;又如分成(a1×a2)×(a3.....×an),然后再对(a1×a2)和(a3.....×an)括号化。
设n个矩阵的括号化方案的种数为f(n),那么问题的解为f(n) = f(1)*f(n-1) + f(2)*f(n-2) + f(3)*f(n-3) + f(n-1)*f(1)。
f(1)*f(n-1)表示分成(a1)×(a2×a3.....×an)两部分,然后分别括号化。
计算开始几项,f(1) = 1, f(2) = 1, f(3) = 2, f(4) = 5。
结合递归式,不难发现f(n)等于h(n-1)。
2、一个栈(无穷大)的进栈序列为1,2,3,…,n,有多少个不同的出栈序列?思路:这个与加括号的很相似,进栈操作相当于是左括号,而出栈操作相当于右括号。
n个数的进栈次序和出栈次序构成了一个含2n个数字的序列。
第0个数字肯定是进栈的数,这个数相应的出栈的数一定是第2i+1个数。
因为如果是2i,那么中间包含了奇数个数,这奇数个肯定无法构成进栈出栈序列。
设问题的解为f(2n),那么f(2n) = f(0)*f(2n-2) + f(2)*f(2n-4) +f(2n-2)*f(0)。
f(0) * f(2n-2)表示第0个数字进栈后立即出栈,此时这个数字的进栈与出栈间包含的数字个数为0,剩余为2n-2个数。
f(2)*f(2n-4)表示第0个数字进栈与出栈间包含了2个数字,相当于1 2 2 1,剩余为2n-4个数字。
依次类推。
假设f(0) = 1,计算一下开始几项,f(2) = 1, f(4) = 2, f(6) = 5。
结合递归式,不难发现f(2n) 等于h(n)。
3、n个节点构成的二叉树,共有多少种情形?思路:可以这样考虑,根肯定会占用一个结点,那么剩余的n-1个结点可以有如下的分配方式,T(0, n-1),T(1, n-2),...T(n-1, 0),设T(i, j)表示根的左子树含i个结点,右子树含j个结点。
设问题的解为f(n),那么f(n) = f(0)*f(n-1) + f(1)*f(n-2) + .......+ f(n-2)*f(1) + f(n-1)*f(0)。
假设f(0) = 1,那么f(1) = 1, f(2) = 2, f(3) = 5。
结合递推式,不难发现f(n)等于h(n)。
4、n对括号有多少种匹配方式?思路:n对括号相当于有2n个符号,n个左括号、n个右括号,可以设问题的解为f(2n)。
第0个符号肯定为左括号,与之匹配的右括号必须为第2i+1字符。
因为如果是第2i个字符,那么第0个字符与第2i个字符间包含奇数个字符,而奇数个字符是无法构成匹配的。
通过简单分析,f(2n)可以转化如下的递推式:f(2n) = f(0)*f(2n-2) + f(2)*f(2n - 4) + ... + f(2n - 4)*f(2) + f(2n-2)*f(0)。
简单解释一下,f(0) * f(2n-2)表示第0个字符与第1个字符匹配,同时剩余字符分成两个部分,一部分为0个字符,另一部分为2n-2个字符,然后对这两部分求解。
f(2)*f(2n-4)表示第0个字符与第3个字符匹配,同时剩余字符分成两个部分,一部分为2个字符,另一部分为2n-4个字符。
依次类推。
假设f(0) = 1,计算一下开始几项,f(2) = 1, f(4) = 2, f(6) = 5。
结合递归式,不难发现f(2n) 等于h(n)。
5、在圆上选择2n个点,将这些点成对连接起来使得所得到的n条线段不相交的方法数?思路:以其中一个点为基点,编号为0,然后按顺时针方向将其他点依次编号。
那么与编号为0相连点的编号一定是奇数,否则,这两个编号间含有奇数个点,势必会有个点被孤立,即在一条线段的两侧分别有一个孤立点,从而导致两线段相交。
设选中的基点为A,与它连接的点为B,那么A和B将所有点分成两个部分,一部分位于A、B的左边,另一部分位于A、B的右边。
然后分别对这两部分求解即可。
设问题的解f(n),那么f(n) = f(0)*f(n-2) + f(2)*f(n-4) + f(4)*f(n-6) + ......f(n-4)*f(2) + f(n-2)*f(0)。
f(0)*f(n-2)表示编号0的点与编号1的点相连,此时位于它们右边的点的个数为0,而位于它们左边的点为2n-2。
依次类推。
f(0) = 1, f(2) = 1, f(4) = 2。
结合递归式,不难发现f(2n) 等于h(n)。
6、求一个凸多边形区域划分成三角形区域的方法数?思路:以凸多边形的一边为基,设这条边的2个顶点为A和B。
从剩余顶点中选1个,可以将凸多边形分成三个部分,中间是一个三角形,左右两边分别是两个凸多边形,然后求解左右两个凸多边形。
设问题的解f(n),其中n表示顶点数,那么f(n) = f(2)*f(n-1) + f(3)*f(n-2) + ......f(n-2)*f(3) + f(n-1)*f(2)。
f(2)*f(n-1)表示三个相邻的顶点构成一个三角形,那么另外两个部分的顶点数分别为2和n-1。
设f(2) = 1,那么f(3) = 1, f(4) = 2, f(5) = 5。
结合递推式,不难发现f(n) 等于h(n-2)。
7、描述:有2n个人排成一行进入剧场。
入场费5元。
其中只有n个人有一张5元钞票,另外n人只有10元钞票,剧院无其它钞票,问有多少中方法使得只要有10元的人买票,售票处就有5元的钞票找零?思路:可以将持5元买票视为进栈,那么持10元买票视为5元的出栈。
这个问题就转化成了栈的出栈次序数。
由应用三的分析直接得到结果,f(2n) 等于h(n)*n!*n!。
8、拥有n+1 个叶子节点的二叉树的数量为h(n).例如 4个叶子节点的所有二叉树形态:9、n*n的方格地图中,从一个角到另外一个角,不跨越对角线的路径数为h(n).例如, 4×4方格地图中的路径有:10、圆桌周围有 2n个人,他们两两握手,但没有交叉的方案数为h(n)11、说16个人按顺序去买烧饼,其中8个人每人身上只有一张5块钱,另外8个人每人身上只有一张10块钱。
烧饼5块一个,开始时烧饼店老板身上没有钱。
16个顾客互相不通气,每人只买一个。
问这16个人共有多少种排列方法能避免找不开钱的情况出现。
h(8)=1430,所以总数=1430*8!*8!12、在图书馆一共6个人在排队,3个还《面试宝典》一书,3个在借《面试宝典》一书,图书馆此时没有了面试宝典了,求他们排队的总数?h(3)=5;所以总数为5*3!*3!=180.13、对于集合的不交叉划分的数目为,这里解释一下不交叉划分,我们对于集合{a,b}和{c,d},假设他们组成了两个区间[a,b]和[c,d],我们假设两个区间不重合,那么以下四种情况当做是不交叉的:a<c<d<b,a<b<c<d,c<a<b<d 与c<d<a<b,就是说两个区间可以包含或者相离,那么此时我们称集合{a,b}和{c,d}是不交叉的。
对于集合,将里面元素两两分为一子集,共n个,若任意两个子集都是不交叉的,那么我们称此时的这个划分为一个不交叉划分。
此时不交叉的划分数就是我们的了,证明也很容易,我们将每个子集中较小的数用左括号代替,较大的用右括号代替,那么带入原来的1至2n的序列中就形成了合法括号问题,就是我们第二点的结论。
例如我们的集合{1,2,3,4,5,6}的不交叉划分有五个:{{1,2},{3,4},{5,6}},{{1,2},{3,6},{4,5}},{{1,4},{2,3},{5,6}},{{1,6},{2,3},{4,5}}和{{1,6},{2,5},{3,4}}。
14、n层的阶梯切割为n个矩形的切法数也是。
如下图所示:这个证明是怎么进行的呢?我们先绘制如下的一张图片,即n为5的时候的阶梯:我们注意到每个切割出来的矩形都必需包括一块标示为*的小正方形,那么我们此时枚举每个*与#标示的两角作为矩形,剩下的两个小阶梯就是我们的两个更小的子问题了,于是我们的注意到这里的式子就是我们前面的性质3,因此这就是我们所求的结果了。
15、在一个2*n的格子中填入1到2n这些数值使得每个格子内的数值都比其右边和上边的所有数值都小的情况数也是。
16、平面上连接可以形成凸包的2n个点分成2个一组连成n条线段,两两线段之间不相交的情况总数是,Catalan数问题的一个变形:n+m个人排队买票,并且满足,票价为50元,其中n个人各手持一张50元钞票,m个人各手持一张100元钞票,除此之外大家身上没有任何其他的钱币,并且初始时候售票窗口没有钱,问有多少种排队的情况数能够让大家都买到票。
这个题目是Catalan数的变形,不考虑人与人的差异,如果m=n的话那么就是我们初始的Catalan数问题,也就是将手持50元的人看成是+1,手持100元的人看成是-1,任前k个数值的和都非负的序列数。
组合数学12种状态公式
组合数学12种状态公式组合数学是一门研究集合的组合方式和性质的数学学科。
在组合数学中,有许多重要的状态公式被广泛应用于不同的领域。
本文将介绍其中的12种状态公式,并探讨它们的应用。
1. 排列公式(Permutation Formula)排列是从一组元素中选取若干个元素进行排列组合的方式。
排列公式可以表示为P(n, k) = n! / (n-k)!,其中n表示元素的总数,k表示选取的元素个数。
排列公式在密码学、密码破解、组合优化等领域有广泛的应用。
2. 组合公式(Combination Formula)组合是从一组元素中选择若干个元素形成一个子集的方式。
组合公式可以表示为C(n, k) = n! / (k! * (n-k)!),其中n表示元素的总数,k表示选择的元素个数。
组合公式在概率论、统计学、图论等领域有重要的应用。
3. 多项式系数公式(Binomial Coefficient Formula)多项式系数是组合数学中的一种重要概念,表示在多项式展开中各项的系数。
多项式系数公式可以表示为C(n, k) = C(n-1, k-1) + C(n-1, k),其中n表示元素的总数,k表示选择的元素个数。
多项式系数公式在概率论、统计学、组合优化等领域有广泛的应用。
4. 二项式定理(Binomial Theorem)二项式定理是组合数学中的重要定理,用于展开(x + y)^n的多项式表达式。
根据二项式定理,(x + y)^n可以展开为n+1个项的和,每一项的系数由多项式系数公式给出。
二项式定理在代数学、概率论等领域有广泛的应用。
5. 斯特林公式(Stirling Formula)斯特林公式是用于近似计算阶乘的公式,可以表示为n! ≈ sqrt(2πn) * (n/e)^n,其中n为正整数,e为自然对数的底。
斯特林公式在概率论、统计学、数论等领域有重要的应用。
6. 贝尔数(Bell Numbers)贝尔数是组合数学中的一种数列,表示将n个元素划分为不同的非空子集的方式的总数。
组合数学第8章[特殊计数序列]
a0
a4 a3 a2
a2 a3 a4 (a1 (a2 (a3a4 ))) (a2 (a3a4 )) (a3a4 ) a1
a0
a4 a3 a2
a1
a2 a3
a4
Catalan数
(a1 ((a2 a3 )a4 )) ((a2 a3 )a4 ) (a2 a3 ) a1 a2 a3 a4
图8-6
a0 a1 a2
Catalan数
[例4]有2n个人排成一行进入剧场,入场 费50美分。2n个人中有n个人有50美分的 硬币,另n个人有一美元的纸币。问有多 少种列队方式,使得只要有持1美元的人 买票,售票处就有50美分的硬币可以找零 ? [解]将50的硬币和1美元纸币分别视为+1 和-1,则答案为例3中的符合要求的序列 1 2n 数:Cn 2
Catalan数
((a1 (a2 a3 ))a4 ) (a1 (a2 a3 )) a1 (a2 a3 ) a1
a0
a4 a3 a2
a2 a3 a4 (((a1a2 )a3 )a4 ) a1 a4
a0
a4 a3 a2
((a1a2 )a3 ) (a1a2 ) a1 a2 a3
Catalan数
((a1a2 )(a3a4 )) (a1a2 ) a1 (a3a4 ) a1
nhn1 (4n 6)hn
f n 1 nhn 1,
f n 1 fn 2(2n 3) (4n 6) fn n 1 n 1 (2n 2)( 2n 3) fn (n 1)( n 1)
Catalan数
即
f n1 (2n 2)(2n 3) , f 2 h2 1, fn (n 1)(n 1)
卡特兰数(Catalan)公式、证明、代码、典例
卡特兰数(Catalan)公式、证明、代码、典例⼤佬博客:组合数公式:⼀、关于卡特兰数卡特兰数是⼀种经典的组合数,经常出现在各种计算中,其前⼏项为 : 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 477638700, 1767263190, 6564120420, 24466267020, 91482563640, 343059613650, 1289904147324, 4861946401452, ...⼆、卡特兰数的⼀般公式卡特兰数满⾜以下性质:令h(0)=1,h(1)=1,catalan数满⾜递推式。
h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (n>=2)。
也就是说,如果能把公式化成上⾯这种形式的数,就是卡特兰数。
当然,上⾯这样的递推公式太繁琐了,于是数学家们⼜求出了可以快速计算的通项公式。
h(n)=c(2n,n)-c(2n,n+1)(n=0,1,2,...)。
这个公式还可以更简单得化为h(n)=C(2n,n)/(n+1)。
后⼀个公式都可以通过前⼀个公式经过⼏步简单的演算得来,⼤家可以拿起笔试试,⼀两分钟就可以搞定。
1. 出栈次序2. 01序列3. ‘+1’ ‘-1’序列4. 括号序列5. 找零问题6. 矩阵链乘7. ⼆叉树计数8. 凸多边形划分9. 圆上n条线段10. 单调路径11. 填充阶梯图形12. 摞碗问题13. 汽车胡同加油问题14. 还书借书问题15. ⾼矮排队问题典例:1. 出栈次序⼀个栈(⽆穷⼤)的进栈序列为1,2,3,…,n,有多少个不同的出栈序列?2. 01序列给出⼀个n,要求⼀个长度为2n的01序列,使得序列的任意前缀中1的个数不少于0的个数,有多少个不同的01序列?以下为长度为6的序列:111000 101100 101010 110010 1101003. ‘+1’ ‘-1’序列n个+1和n个-1构成的2n项 a1,a2,⋅⋅⋅,a2na1,a2,⋅⋅⋅,a2n,其部分和满⾜⾮负性质,即a1+a2+⋅⋅⋅+ak>=0a1+a2+⋅⋅⋅+ak>=0,(k=1,2,···,2n) ,有多少个不同的此序列?4. 括号序列n对括号有多少种匹配⽅式?5. 找零问题2n个⼈要买票价为五元的电影票,每⼈只买⼀张,但是售票员没有钱找零。
组合数学-第十一节:Fibonacci数和Catalan数
4.5 Fibonacci 数和Catalan 数Fibonacci 数列和Catalan 数列是递推关系的典型问题,它们经常出现在组合计数问题中,而这两个数列本身的应用也十分广泛。
4.5.1 Fibonacci 数关于Fibonacci 数列的问题是一个古老的数学问题,它是由意大利著名数学家Fibonacci 于1202年提出来的。
这个问题是:把一对兔子(雌、雄各一只)在某年的开始放到围栏中,每个月这对兔子都生出一对新兔子,其中雌、雄各一只。
从第二个月开始,每对新兔子每个月也生出一对新兔子,也是雌、雄各一只。
问一年后围栏中有多少对兔子?对于1,2,n = ,令()f n 表示第n 个月开始时围栏中的兔子对数。
显然有()()11,22f f ==。
在第n 个月的开始,那些第1n -个月初已经在围栏中的兔子仍然存在,而且每对在第2n -个月初就存在的兔子将在第1n -个月生出一对新兔子,所以有()()()()()()12311,22f n f n f n n f f =-+-≥⎧⎪⎨==⎪⎩ (4.5.1)这是一个带有初值的递推关系,如果我们规定()01f =,则递推关系(4.5.1)就变成()()()()()()12201,11f n f n f n n f f =-+-≥⎧⎪⎨==⎪⎩ (4.5.2)满足递推关系(4.5.2)的数列就叫做Fibonacci 数列,它的项就叫做Fibonacci 数。
下面我们来求解这个递推关系,它的特征方程为210x x --=其特征根为12x x ==所以,通解为()121122n nf n c c ⎛⎛+=+ ⎝⎭⎝⎭代入初值来确定1c 和2c ,得到方程组12121,11122c c c +=⎧⎪⎨++=⎪⎩ 解这个方程组,得121,212cc+==所以,原递推关系的解为()()110,1,2n nf nn++=⎭⎭=Fibonacci数常出现在组合计数问题中。
数学期望与卡塔兰(Catalan)数
C tl 11 19)即序列 , 1 , , aa n(84— 84) a , …
Cn … , =
n 十 l …
=
十 l
・
礼 !・礼 :
( = 012… ) ,,, 为第 n+1 个卡塔兰 ( aaa ) C tl n
数.前 1 个卡塔兰数为 1 1 2 5 1 , 2 12 0 , , , , 4 4, 3,
序列, 不但应用它解决幂级数展开问题, 而且还 给出了卡塔兰数的一个几何模型. 88 13 年卡塔兰 提 出并解决了下面问题: 个有 固定顺序的因子, n 例如0 , 2… , 在两个相邻因子间连续作乘 1a , a , 法, 如何 确定不同的求积方法数? J l 卡塔兰得到 4 方法数是 C 一 . n 1 若取 n=4 四个有固定顺序的 , 因子 a bCd 则 = 5 五种不同结合方法是 ,,, , ,
公式, 以对 比赛场数进行预测. 可
…
用 () 表示在“佗一 1 n ( : 12 2 局 胜”钆 ,, ) 制下 比赛局数 ∈ 的数学期望.
本文的主要结果是 定理 设 甲每局胜 的概率为P 乙每局胜 的 ,
首创者 【j 3 他在1 世纪三、四十年代先于欧拉 J 8 (7 8 和卡塔兰 (8 8 提 出并应用 了这一 15 年) 13 年)
21年第 3 02 期
数 学数学
33 —, }
数学期望与卡塔兰( aa n数 C tl ) a
1 08首都师范大学初等教育学院 石冶郝 程小红 04 0
1 .引言
卡 塔兰 序 列 ( 名 于 比利 时数 学家 E 取 .C .
文 讨论 了重复性赛制 问题的数学模型, 并
证明“n一1 n 制是一种公平 的比赛, 2 局 胜” 重点 研 究 比赛 局 数 的相 关 概率 分 布 问题 . 本文侧重探讨 “n一 1 n 制下 比赛局 2 局 胜”
卡特兰数——Catalan数(从一道腾讯笔试题引发的学习和思考)
2014-04-16 09:14 1252人阅读评论(0) 收藏举报分类:大公司面试笔试(34)版权声明:本文为博主原创文章,未经博主允许不得转载。
目录(?)[+]时间:2014.04.15地点:基地-----------------------------------------------------------------------------一、故事背景卡特兰数是离散数学中的一个重要数列,是很多生活场景的一个抽象,比如买早餐啦,买电影票啦等等。
在很多大公司的笔试或者面试题中也常涉及到。
-----------------------------------------------------------------------------二、卡特兰数的引出在x-y坐标平面上,考虑两种一格一格的移动,每一次平移我们可以上移一格,也可以下移一格,左移或者右移也是一样。
姑且这样定义:右移U: (X,Y)——。
(x+1,y) 上移U: (X,Y)——>(x,y+1)现在问通过这两种移动每次移动一次,有多少种方法可以从点(0,0)移动到点(5,5),这显然是5个R和5个U的组合排列,共十次移动,10选5就可以了,C(10,5)比如:RRUURRURUU 是符合要求的我们再加点限制,在这个过程中不可越过直线y=x,但可接触。
于是你该知道,这样的限制意味着,移动到每一点时,所经过的R的个数一定大于或等于U的个数,如果小于则不合要求。
比如: RRUURRURUU 符合限制条件比如:RUUURRRUUR 就是不和限制条件对于不符合限制条件的情形来说,我们先把它在第一次越过y=x点处断开,分为两个部分RUUURRRUUR然后第一部分因为符合要求不变,第二部分做翻转操作,即R变U,U变R,于是得RURRUUURRU其实这样的分法,我们可以想到,在第一次越过直线时分开,即会导致前面部分得U比R多一个,而后面部分的R会比U多一个,一翻转就是U比R多一个,如此,总共翻转序列后U就比R多出两个,比如此处R只有4个U却有5个。
Catalan数列探究与应用
0 1 1 1 1 1 1 1
2003-4
1 1 2 3 4 5 6 7
2 2 5 9 14 20 27
3
4
5
6
7
1 2 3 4 5 6 7
5 14 28 48 75 14 42 90
165
42
132 297 132 429 429
10
华师大二附中 高一(1)班 戴明劼
联想杨辉三角,斜置式如下表 其表达式为
Catalan数列 数列 探究与应用
Catalan数阵f (i, j)的通项公式
2003-4 华师大二附中 高一(1)班 戴明劼 9
求: Catalan数阵 f ( i, j ) = ? Catalan数阵 首先观察Catalan数阵的结构,见下表 首先观察Catalan数阵的结构,见下表
i j
Catalan数列 数列 探究与应用
2003-4 华师大二附中 高一(1)班 戴明劼 3
研究思路 综合应用已学过的(中学)知识 着重研究形成规律,内在结构与性质、特点 深入揭示其本质,为应用打下更坚实的基础 研究目的 探索数学的无穷奥秘 真正做到知其然、知其所以然; 提高综合运用已有知识 解决未遇到过的难题的能力; 期望能在方法上、或概念上、或应用上 能对Catalan数的研究做出一些贡献。
1 0 0 0 0 0 0 0
2
3
4
5
6
7
1 2 3 4 5 6 7
1 1 5 1 6 21 1 7 28 84 1 8 36 120 1 9 45 华师大二附中 高一(1)班 戴明劼 165
330 495
12
1287
可发现有如下关系式:
Catalan数列 数列 探究与应用
卡塔兰猜想
卡塔兰猜想卡塔兰猜想是比利时数学家欧仁·查理·卡塔兰(Eugène Charles Catalan)在1844年提出的一个数论的猜想。
它是说除了8 = 23,9 = 32,没有两个连续整数都是正整数的幂;以数学方式表述为:不定方程xa − yb = 1的大于1的正整数x,y,a,b只有唯一解x = 3,y = 2,a = 2,b = 3。
也可以叫“8--9”猜想。
2002年4月,帕德博恩大学的罗马尼亚数学家普雷达·米哈伊列斯库(Preda Mih ăilescu)证明了这猜想,所以它现在是定理了。
这个证明由尤里·比卢(Yuri Bilu)检查,大幅使用了分圆域和伽罗华模。
与卡塔兰猜想相似的有费马大定理。
历史在卡塔兰之前已有人考虑过类似的问题。
1320年左右,莱维·本·热尔松(Levi ben Gerson,1288年—1344年)证明2和3的幂之间只有8和9相差是1。
莱昂哈德·欧拉证明,x2 - y3 = 1只有一解:x = 3,y = 2。
勒贝格证明了方程xa - y2 = 1,a > 1 没有正整数解。
1965年柯召证明方程x2 - yb = 1,b > 1 只有一个解。
于是卡塔兰猜想只余下a,b为奇素数的情况。
1976年罗贝特·泰德曼(Robert Tijdeman)证明卡塔兰猜想的方程只有有限个解。
雷·斯坦纳(Ray Steiner)和莫里斯·米尼奥特(Maurice Mignotte)也对这猜想作出贡献。
皮莱(Pillai)猜想:把卡塔兰猜想一般化,推测正整数的幂之间的差趋向无限大;换句话说,对任何正整数,仅有限多对正整数的幂的差是这个数。
这猜想现在仍未解决。
递归求解卡特兰数
递归求解卡特兰数卡特兰数,又称卡塔兰数,是组合数学中一类重要的数列,其通项公式为C(n)=C(n-1)*2*(2n-1)/(n+1),其中n为正整数。
卡特兰数在组合数学、离散数学等领域被广泛应用,如二叉树的数量、括号匹配的方案数、山峰序列等问题。
本文将介绍一种递归求解卡特兰数的方法,以求解C(5)为例进行说明。
递归求解卡特兰数的基本思路是将问题拆分成若干个子问题,然后通过递归的方式进行求解。
具体来说,对于求解C(n),我们可以考虑先将其拆分成C(n-1)和C(n-2)两个子问题,然后通过递归求解这两个子问题,最终将它们的结果结合在一起得到C(n)的值。
下面是求解C(5)的具体步骤:Step1:求解C(4)根据卡特兰数的通项公式,C(4)=C(3)*2*7/5=14。
因此,我们需要先求解C(3)。
Step2:求解C(3)同理,C(3)=C(2)*2*5/4=5。
因此,我们需要先求解C(2)。
Step3:求解C(2)根据卡特兰数的通项公式,C(2)=C(1)*2*3/2=2。
因此,我们需要先求解C(1)。
Step4:求解C(1)C(1)=1,是卡特兰数的起始值。
Step5:结合子问题的结果求解C(2)根据递归的思路,我们已经求得C(1)的值,因此可以使用C(2)=C(1)*2*3/2=2的计算公式求解C(2)的值。
Step6:结合子问题的结果求解C(3)同理,我们已经求得C(2)的值,因此可以使用C(3)=C(2)*2*5/4=5的计算公式求解C(3)的值。
Step7:结合子问题的结果求解C(4)同理,我们已经求得C(3)的值,因此可以使用C(4)=C(3)*2*7/5=14的计算公式求解C(4)的值。
Step8:结合子问题的结果求解C(5)同理,我们已经求得C(4)的值,因此可以使用C(5)=C(4)*2*9/6=42的计算公式求解C(5)的值。
通过上述步骤,我们成功地使用递归的方法求解了C(5)的值,即C(5)=42。
卡特兰数
卡塔兰数是组合数学中一个常出现在各种计数问题中出现的数列。
由以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名。
卡塔兰数的一般项公式为另类递归式:h(n)=((4*n-2)/(n+1))*h(n-1);前几项为(OEIS中的数列A000108): 1, 1, 2, 5, 14, 42, 132, 429, 1430, 48 62, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 1296447 90, 477638700, 1767263190, 6564120420, 24466267020, 91482563640, 343 059613650, 1289904147324, 4861946401452, ...C n的另一个表达形式为所以,C n是一个自然数;这一点在先前的通项公式中并不显而易见。
这个表达形式也是André对前一公式证明的基础。
(见下文的第二个证明。
)卡塔兰数满足以下递推关系它也满足这提供了一个更快速的方法来计算卡塔兰数。
卡塔兰数的渐近增长为它的含义是左式除以右式的商趋向于1当n→∞。
(这可以用n!的斯特灵公式来证明。
)所有的奇卡塔兰数C n都满足n = 2k− 1。
所有其他的卡塔兰数都是偶数。
组合数学中有非常多.的组合结构可以用卡塔兰数来计数。
在Richard P. Stanley的Enumerative Combinatorics: Volume 2一书的习题中包括了66个相异的可由卡塔兰数表达的组合结构。
以下用C n=3和C n=4举若干例:▪C n表示长度2n的dyck word的个数。
Dyck word是一个有n个X 和n个Y组成的字串,且所有的部分字串皆满足X的个数大于等于Y的个数。
以下为长度为6的dyck words:XXXYYY XYXXYY XYXYXY XXYYXY XXYXYY▪将上例的X换成左括号,Y换成右括号,C n表示所有包含n组括号的合法运算式的个数:((())) ()(()) ()()() (())() (()())▪C n表示有n+1个叶子的二叉树的个数。
