浅谈递推法
高中物理解题方法:六、递推法

六、递推法方法简介递推法是解决物体与物体发生多次作用后的情况。
即当问题中涉及相互联系的物体较多并且有规律时,应根据题目特点应用数学思想将所研究的问题归类,然后求出通式。
具体方法是先分析某一次作用的情况,得出结论。
再根据多次作用的重复性和它们的共同点,把结论推广,然后结合数学知识求解。
用递推法解题的关键是导出联系相邻两次作用的递推关系式。
塞题精析例1:质点以加速度a从静止出发做直线运动,在某时刻t ,加速度变为2a ;在时刻2t ,加速度变为3a ;…;在nt时刻,加速度变为(n + 1) a ,求:(1)nt时刻质点的速度;(2)nt时间内通过的总路程。
解析:根据递推法的思想,从特殊到一般找到规律,然后求解。
(1)物质在某时刻t末的速度为v t = at2t末的速度为v2t = v t + 2at 即v2t = at + 2at3t末的速度为v3t = v2t + 3at = at + 2at + 3at……则nt末的速度为v nt = v(n-)t + nat = at + 2at + 3at + … + nat = at (1 + 2 + 3 + …+ n)= at⋅12(n + 1)n =12n (n + 1)at(2)同理:可推得nt内通过的总路程s =112n (n + 1)(2n + 1)at2例2:小球从高h0 = 180m处自由下落,着地后跳起又下落,每与地面相碰一次,速度减小1n(n = 2),求小球从下落到停止经过的总时间为通过的总路程。
(g取10m/s2)解析:小球从h0高处落地时,速率v02gh= 60m/s第一次跳起时和又落地时的速率v1 =0v2第二次跳起时和又落地时的速率v2 =02v2……第m次跳起时和又落地时的速率v m =0mv2每次跳起的高度依次为h1 =21v2g=02hn,h2 =22v2g=04hn,……,通过的总路程Σs = h0 + 2h1 + 2h2 + … + 2h m + …= h0 +022hn(1 +21n+41n+ … +2m21n-+ …)= h 0 +022h n 1-= h 0⋅22n 1n 1+-=53h 0 = 300m经过的总时间为Σt = t 0 + t 1 + t 2 + … + t m + … =0v g +12v g + … +m 2v g+ … =0v g [1 + 2⋅1n + … + 2⋅(1n )m+ …] =0v g ⋅n 1n 1+-=03v g=18s 例3:A 、B 、C 三只猎犬站立的位置构成一个边长为a 的正三角形,每只猎犬追捕猎物的速度均为v ,A 犬想追捕B 犬,B 犬想追捕C 犬,C 犬想追捕A 犬,为追捕到猎物,猎犬不断调整方向,速度方向始终“盯”住对方,它们同时起动,经多长时间可捕捉到猎物?解析:由题意可知,由题意可知,三只猎犬都做等速率曲线运动,而且任一时刻三只猎犬的位置都分别在一个正三角形的三个顶点上,但这正三角形的边长不断减小,如图6—1所示。
递推法

Fibonacci数列的应用
Fibonacci数列是最著名的递推公式。经常 出现在各种竞赛题中。 你能看出这几个题都是这个问题的应用吗?
例2 完美覆盖问题
问题描述:有2×n的一个长方形棋盘,用一些1×2的骨牌铺满 方格.例如n=3时,在2×3的棋盘上用1×2的骨片覆盖,共有 3种铺法。
问题求解:编写一个程序,试对给出的任意一个n(n>0),输出铺
01串
有1个长为n的01串,要求不能出现101和111.求符合条件的字符串有多 少个? n<1000000 分析一:设a[n]为n个字符最后两位为00所形成的方案数,同样,b[n]对 应最后两位为01,c[n]对应最后两位为10,d[n]对应最后两位为11. 则a[n]=a[n-2]+b[n-2]+c[n-2]+d[n-2]=a[n-1]+c[n-1] b[n]=a[n-1]=f[n-3] c[n]=b[n-1]+d[n-1] d[n]=b[n-1]=a[n-2]=f[n-4] 所以f[n]=a[n]+b[n]+c[n]+d[n]=f[n-1]+f[n-3]+f[n-4]
我们用递推法求解问题时,关键是找出后项与前项之前的数学关系。 然后从初始项开始,逐项递推。在算出前n-1项之前,我们是不知道第 n项的值的。可以说,为了求第n项值,我们总共要计算n次,因此时间 复杂度为O(n)
而通项式建立的是第n项与项数n之间的数学关系。我们可以直接用项 数n计算出第n项的值。可以说,为了求第n项的值,我们只需计算1次 ,因此时间复杂度为O(1)
生成树的数目
在网格中取一个N x 1的矩形,并把它当作 一个无向图。这个图有2(N+1)个顶点,有 3(N-1)+4条边。这个图有多少个生成树? 样例输入:1 样例输出:4
网格问题的基本方法--递推

网格问题的基本方法--递推引言网格问题是计算机科学中一个常见且重要的问题。
这类问题通常涉及在一个网格中寻找特定目标或满足特定条件的路径、组合或排列。
递推是解决网格问题的一种基本方法,它通过将问题分解为子问题,并利用子问题的解来构建整体解决方案。
递推的基本原理递推的基本原理是将大问题拆解为一系列相对较小的子问题,然后通过求解子问题逐步构建出最终解决方案。
在网格问题中,递推可以通过以下步骤实现:1. 定义子问题:将大网格划分为小网格,通常是将一个网格划分为上、下、左、右四个相邻的子网格。
2. 定义初始条件:确定子问题的边界条件和初始状态,例如起始位置和目标位置。
3. 推导递推关系:根据子问题之间的关系,确定如何从一个子问题推导到下一个子问题。
这需要基于问题的特定要求来确定,例如可以是在相邻子网格中移动或改变状态。
4. 求解子问题:使用递归或迭代的方式求解子问题,并记录子问题的解。
5. 组合子问题的解:根据子问题的解,构建出最终的解决方案。
递推在网格问题中的应用递推在网格问题中具有广泛的应用。
以下是一些常见的网格问题及其解决方法:1. 迷宫问题:在一个迷宫中,找到从起点到终点的路径。
可以使用递推来记录每个位置是否可达,并找到从起点到终点的路径。
2. 数独问题:在一个9x9的网格中填入数字,使得每行、每列和每个3x3的子网格中的数字互不相同。
可以使用递推来逐步填充每个格子,直到整个数独被解决。
3. 动态规划问题:在一个网格中寻找最佳路径或组合。
通过定义子问题和递推关系,可以使用动态规划的方法求解。
结论递推是解决网格问题的一种基本方法,通过将问题拆解为子问题并逐步构建解决方案,可以高效地解决各种网格问题。
在实际应用中,可以根据问题的具体要求和特点,灵活运用递推方法来求解网格问题。
数学中的递推与迭代小学生了解递推与迭代的原理

数学中的递推与迭代小学生了解递推与迭代的原理在数学中,递推和迭代是两种常见的数学方法,用于解决问题和生成数列。
对于小学生来说,了解递推和迭代的原理可以帮助他们更好地理解数学概念,并培养他们的逻辑思维和问题解决能力。
一、递推的原理递推是一种根据前一项或前几项推导后一项的方法。
简单来说,就是通过已知条件计算未知结果。
递推通常使用递推公式或递推关系来表示,常见的递推关系有等差数列和等比数列。
1. 等差数列等差数列是一种数列,其中每一项与前一项之间的差值都相等。
例如,1,3,5,7,9就是一个等差数列,公差为2。
计算等差数列的递推关系很简单,只需要根据前一项和公差相加即可得到后一项。
2. 等比数列等比数列是一种数列,其中每一项与前一项之间的比值都相等。
例如,1,2,4,8,16就是一个等比数列,公比为2。
计算等比数列的递推关系也很简单,只需要根据前一项和公比相乘即可得到后一项。
递推在数学中有着广泛的应用,例如计算斐波那契数列、求解递推方程等。
通过递推,我们能够得到数列中任意一项的值。
二、迭代的原理迭代是一种通过不断重复计算来逼近目标值的方法。
迭代通常使用迭代公式或迭代关系来表示,每次迭代都将上一次的结果作为新的输入,循环进行计算,直到达到某个条件为止。
1. 二分法迭代二分法是一种常见的迭代方法,通过将一个区间不断二分,逼近目标值。
例如,在查找一个数的平方根时,可以利用二分法迭代来逼近。
每次迭代,我们将当前区间的中点作为新的猜测值,然后根据猜测值的平方与目标值的比较结果,将区间缩小一半,逐渐靠近目标值。
2. 牛顿迭代法牛顿迭代法是一种用于求解方程根的迭代方法。
通过不断迭代求导和替换变量的方式,求解方程的近似解。
例如,求解方程f(x)=0的根时,我们可以通过迭代公式x_(n+1) = x_n - f(x_n)/f'(x_n),不断更新变量x的值,直到满足精度要求。
迭代在数学中也有着广泛的应用,例如求解方程的根、求解最优化问题等。
递推关系递推算法的首要问题是得到相邻的数据项

3.2.3 分数数列
设置数组c(i)表第i项的分子,d(i)表第i项的分母(均为整数)。 (1) 初始值为: c(1)=1,d(1)=2;c(2ቤተ መጻሕፍቲ ባይዱ=3,d(2)=5。 (2) 置k在区间(c(i-1),d(i-1))取值,k分别与d(1),d(2), ...d(i-1)比较,若存在相同,则k增1后再比较;若没有相同的,则 产生第i项,作赋值: c(i)=k,d(i)=k+i。
……
if(<条件m>)
f(k)=<递推关系式m>; // 根据关系m递推
}
print(f(n));
// 输出n规模的解f(n)
3.2 递推数列
3.2.1 双关系递推数列 设集合M定义如下: (1) 1∈M (2) x∈M => 2x+1∈M,5x-1∈M (3) 再无其它的数属于M。
// 输出n规模的解f(n)
(2) 简单逆推算法
逆推即从后往前推,从已求得的规模为n,n−1,…,i+1的 一系列解,推出问题规模为i的解,直至得到规模为1的解:
f(n—i+1)=<初始值>; for(k=i;k>=1;k--) f(k)=<递推关系式>; print(f(1));
// 确定初始值 // 实施逆推
(3) 一个有规律的序列的相邻位置上的项之间通常存在着 一定的关系,可以借助已知的项,利用特定的关系逐 项推算出它的后继项的值,直到找到所需的那一项为 止。
2. 递推关系
递推算法的首要问题是得到相邻的数据项之间的 关系,即递推关系。 递推关系是一种高效的数学模型,是递推应用的 核心。 递推关系不仅在各数学分支中发挥着重要的作用, 由它所体现出来的递推思想在各学科领域中更是显 示出其独特的魅力。
浅谈递推法在程序设计中的应用

u e sme s p fs l e e t ac lt n t e r e t e c mp e rb e .T o rlt m s b u d s o t so i e rp a e c luai d s i o lx p o lms w ai mu t e mp d o o c b h e o f n e o o ti lig r u so r be :t eo g a c n i o d t e rc rin fr u a n d t e sc n n e u s vn G rin p o l n o  ̄ s m h n  ̄ d t n a u s m l ,a e o d o ei t o i n h e o o h sh
1 递推 法的概念及其应用
1 1 递推法 的概 念 .
输入 : 文件 中的第一个数为 m, 随后 的数依次
分 另 为 A , , 2 2… , , 。 U 1 1A , , A
递 推法是 青少 年信 息学竞 赛必 须掌握 的一 种方
输 出: 依次输出从蜂房 A 爬到蜂房 的可能路
i n oma o in e c mp t o s,b tas e e s r e c n r t n ifr t n s e c o e i n i c i t u lon c say i ta higp n mmn n n g ig.T e rc rin ai me c i o h e u so rt h t st i
12 引例— — 蜂房 问题 .
一
例如 : 输入 24671 输 出 : 2 28
下面是 解题 步骤 :
只经 过 训 练 的 蜜 蜂 只 能 爬 向 右侧 相 邻 的 蜂
分析 : 根据题意可知, 对于某一个确定 了的 i蜜 , 蜂从 蜂房 A 爬 到蜂房 的可 能路 线总数 c( <= A
递推算法简介

递推算法是一种根据递推关系进行问题求解的方法。
递推关系可以抽象为一个简单的数学模型,即给定一个数的序列a0,a1...,an若存在整数n0,使当n>n0时可以用等号将an与其前面的某些项ai联系起来,这样的式子成为递推公式。
递推算法是一种简单的算法,通过已知条件利用特点的递推关系可以得出中间推论,直至得到问题的最终结果,递推算法分为顺推法和逆推法两种,顺推法则是在不知道初始条件的情况下,从问题的结果除非经递推关系逐步推算出问题的解,这个问题的解也是问题的初始条件。
递归法是从已知条件出发,一步步地递推出未知项,直到问题的解。
递归也是递推的一种,只不过它是对待解问题的递推,知道把一个负责的问题递推为简单的易解问题,然后再一步步返回,从而得到原问题的解。
严格来讲,递归不仅仅是一种问题求解方法,更是一种编程技术,许多算法可以通过递归技术来编程实现。
在计算机科学中,人们把程序直接或间接调用自身的过程称为递归。
过程或函数直接调用自身的递归成为直接递归,间接调用自身的递归称为间接递归。
在问题求解中,采用递归算法有两个重要的好处:一是容易证明算法有两个重要的好处,其次是代码实现简洁,代码编程量少。
不足是程序运行效率较低。
递推算法的基本思想是把一个复杂庞大的计算过程转化为简单过程的多次重复。
该算法利用了计算机速度快和自动化的特点。
而递归法的思想是从已知条件出发,一步步地递推出未知项,直到问题的解。
递推算法

递推算法客观世界中的各个事物之间或者一个事物的内部各元素之间,往往存在(隐藏)着很多本质上的关联。
我们设计程序前,应该要通过细心的观察、丰富的联想、不断的尝试推理,尽可能先归纳总结出其内在的规律,然后再把这种规律性的东西抽象成数学模型,最后再去编程实现。
递推算法是从问题的规模(项数)出发,找到大规模问题与小规模问题之间的关系(或前后项之间的关联),然后根据他们之间的联系逐步求解。
递推法分为顺推和倒推两种,顺推适用于已知起始条件(小规模问题的解),然后根据关联逐步推算,而倒推则相反。
如果某个问题可以使用递推算法,则该问题的解决总会存在若干个步骤,在每一步的处理上存在若干种可能性,需要做出选择,但当前做出的选择与后续问题无关,即,已做出的选择会影响到后续选择,但后面末作出的选择不会影响到前面已有的结论。
例1:a、b、c 3个不同的数字组成一个N位数,要求不出现两个a相邻,也不出现两个b相邻,这样的N位数的个数为A n,用A1-n和A2-n表示A n的关系式是什么?例2:已知楼梯有十级、某人从下向上走,每步可跨一级或二级,问该走完楼梯共有多少种不同的走法。
写出该问题的递推关系式。
例3:有2×n的一个长方形方格,用一个1×2的骨牌铺满方格。
例如n=3时,为2×3方格。
此时用一个1×2的骨牌铺满方格,共有3种铺法:试对给出的任意一个n(n>0),求出铺法总数的递推公式。
例4:我们来玩一个游戏:自然数1到N,按顺序列成一排,你可以从中取走任意个数,但是相邻的两个不可以同时被取走。
如果你能算出一共有多少种取法,那么你会被天神Lijiganjun奖励。
例5:一对大兔子每月生一对小兔子,小兔子一个月长成大兔子,问开始有一对大兔子,一年后有多少只大兔子?例6:梵塔(hanoi、汉诺、河内塔)问题。
有n个圆盘,半径各不相同,依半径从大到小,自下而上套在A柱上,另还有B,C两根空柱,现要求将A柱上的n个圆盘全部搬到C柱上去,且每次只许搬动一个盘子,还必须始终保持每根柱子上是小盘在上,大盘在下。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅谈递推法082i3m1002 邢莉英摘要:本文是阐述简单的递推法概念应用方法。
递推法是根据具体问题,建立递推关系,在通过递推关系求解的方法。
其中递推关系是表示关于正整数参变量的一类特殊关系,它从给定的初值出发,通过这种关系一步一步地通过递推获得所需结果。
并给出用递推法解题的一般过程。
关键词:递推法;类型;应用我们在大学的生活已经过去三年来,学习了很多专业知识,数形结合,换元法,构造法,交集法,递推法,数学归纳法等等。
在这里就简单说说递推法。
一、递推法那么什么是递推法呢?递推法是根据具体问题,建立递推关系,在通过递推关系求解的方法。
其中递推关系是表示关于正整数参变量的一类特殊关系,它从给定的初值出发,通过这种关系一步一步地通过递推获得所需结果。
递推法的步骤是::1)按次序研究集合中最初最原始的若干个问题。
2)按次序寻求集合中问题间的转换规律即递推关系,使问题逐次转化成较低级层次或简单的且能解决问题的或已解决的问题。
我们在中学的时候学过与递推法相近的数学归纳法,那么他们有什么区别呢。
对于一个可数的无穷命题集,数学归纳法的第一部是以证明集合中第一个命题成立作为基础;第二步就是假设集合中的第k个命题成立,推出第k+1个命题成立,也就是证实存在递推关系。
因此数学归纳法中有递推方法,但这又是两种不同的方法。
数学归纳法是一种证实归纳猜想关系的方法;而递推方法是一种研究问题的探索方法,也就是研究是否能递推?如何递推?而不仅仅是证实存在某种递推关系。
二、递推法的类型及递推关系的建立递推方法是普及在数学各个领域中的,是探索和发现数学规律的重要方法之一。
在中学教学中有很多方法可以用递推方法解决。
我们来看一个典型的问题梵塔问题。
梵塔问题起源于中东地区的一个古老的传说:在梵城(Hana)地下有一个僧侣的秘密组织,他们有3个大型的塔柱,左边的塔柱上由上到下套着64个金盘。
僧侣们的工作就是把64个金盘从左边塔柱移到右边的塔柱上去。
但转移的是有规定的,1、每次只能搬动一只盘子,盘十只能在3个塔柱上安放,不允许放在地上;2、在每个塔柱上,只允许把小盘十叠在大盘上,反之不允许。
据传说,僧侣们完成这个任务时,世界的末日就来临来。
那么这个伟大的工程要多久才能完成呢,下面我们用递推法来研究下。
解:设移动的次数记为f(n).从n=1开始分析,显然是需要一次,即f(1)=1;当n=2时,现将上面的一片小金盘移到第二根塔柱上,移动次数为f(1),再将大的一边金盘移到第三根塔柱上,移动一次,再把第二个塔柱上的金盘取下套在第三根塔柱上,移动f(1)次,共移动2f(1)+1次,即f(2)=2f(1)+1;当n=3时先将第一根上面的两片按n=2的方法移动到第二根塔柱上,需移动f(2)次,在把最大的移动到第三个塔柱上,移动一次,再把第二根塔柱上的移动到第三根上,需移动f(2)次,这样共移动f(3)=2f(2)+1;同理把第n-1片金盘移动到第二根塔柱上,共需移动f(n-1)次,再把第一个最下面的移到第三根上,需移动一次,最后把第二根的移动到第三根上这样共需要f(n)=2f(n-1)+1次,f(n)=2f(n-1)+1即为递推关系式。
由f(1)=1与f(n)=2f(n-1)+1,可以推出f(n)的公式。
事实上 f(n)=2f(n-1)+1,而f(n)+1=2〔f(n-1)+1〕,令 g(n)= f(n)+1,则g(n)=2g(n-1),经迭代后,可得g(n)=2g(n-1)=264-1=18446744073709551615。
假设僧侣们个个身强力壮,每天24小时不知头疲倦地工作,而且一秒钟移动一个金盘,那么,完成这个任务也得花5800亿年。
这的确是出乎意料的。
像这种解决问题也叫做单基递推法,是设问题U (n )是可以按顺序1,2,······进行分析研究的,则,1, 先研究第一级问题U (1)。
2, 在研究第n 级问题U(n)与n-1级问题U(n-1)的转化规律。
在我们数学中的问题往往不是仅通过一个关系就可以表示出来的,往往需要多次的反复就会用到多基和串基的递推方法。
三、 常规的递推关系求解方法运用递推方法求解问题时,首先要建立递推关系试,但如何求解递推关系即求出通向,通常也是不可缺少的。
求解递推关系方法很多,例举归纳法,叠加法,累乘法,构造数列法等。
【例1】已知(1)f =()f n =,其中2,3,n =,试求()f n 的解析式。
解:因为12(1)(sin )3f π==,同理[]1124()(sin )(1)3f n f n π===-, 故1128(2)(sin)3f π+=,1112832(3)(sin)3f π++=,可猜想352111112222()(sin)3n f n π-++++=,所以221(1)32()(sin)3k f n π-=。
事实上,当2n =时,2215(1)384(2)(sin)(sin )33f ππ-==,猜想成立。
假设(2,)n k k k N =≥∈猜想成立,即221(1)32()(sin)3k f k π-=,经证[]2211111111(1)(1)232632224(1)(sin )()(sin )(sin )333kk f k f k πππ+-+-⨯+===22(1)14121()(1)233322(sin)(sin )33kk ππ+--⨯==所以1n k =+时,猜想也成立,即对于2,n n N ≥∈,都有221(1)32()(sin)3n f n π-=。
这就是根据列举归纳法在数学中应用的举例。
下面我们来看看构造数列法证明不等式。
所谓构造数列法,就是根据所证不等式的需要构造一个含有数列的不等式,然后根据数列极限的性质,得到所要证明的不等式即利用原数列的递推关系构造出一个新数列,并且这个新数列的通项公式又是已知的或是能求解的。
当获得新数列的通项后,在做相应的逆运算,还原出需求数列的通项。
【例2】证明:当02x π<<时,有3sin 6x x x -≤。
解:因为22sinsin 2sin (1cos )4sin sin 22224x x x x xx -=-=,又因为sin (0)u u u <>,所以22sin sin 4()224x x x x -<⋅⋅,即32sin sin ()28x x x -<···(1),依次使用1,,,242n x x x-代替(1)式中的x ,得到312sin sin ()4282x x x -< (2)312sin sin ()8484x x x -< (3)31112sin sin ()2282n n n x x x ---< (4)然后相加得34221112sin sin (1)28222nn n x x x --<++++,不等式两边取极限得321sin 1112lim sin lim(1)84442n n n n n x x x x x -→∞→∞⎡⎤⎢⎥⋅-≤++++⎢⎥⎢⎥⎣⎦,由于sin2lim 12n n nxx →∞=,且2111114lim(1)1444314n n -→∞++++==-,从而得3sin 6x x x -≤。
四、 递推方法在中学教学中的应用递推方法在中学教学中有着广泛的应用,内容涉及数列,组合,函数等方面。
【例3】 如图5×5的方格,试问质点由A 到B 有多少种不同的方法。
(假定质点运动 不可以兜圈子且沿进路向前) A分析 先讨论一般性以便得到地推公式。
以m*n 方格为例,设质点有A 到B 的方法数 为f (m,n )。
现在将m 增加1,n 不变,则质点由A 到C 必经过B 点或B`点,即质点由A 至B 到C 及由A 至B`到C 。
由假设可知A 到C 的方法数为f(m+1,n);A 到B`的方法数为f(m+1,n-1)由加法定理可得递推公式 f(m+1,n)=f(m,n)+f(m+1,n-1) B (f(0,m)=f(m,0)=1)取m=4,n=5,注意到f(m,n)=f(n,m),便得到;f(5,5)=f(4,5)+f(5,4)=2f(4,5)=2f(3,,5)+2f(4,4)=………=252。
即方格为5×5时,质点由A 到B 的方法为252种。
【例4】 从{}1,2,,n 中,任意选m 个数(不可重复),问其中无二个相邻的不同选法有多少种? 分析 把这种不同选法的总数记为(,)g m n ,符合条件的选法可分为两种情行: 1) 元素1万恶被选中,那么其他的m-1个元素必须在{}3,4,,n 这n-2个元素中选,而且仍要求不能有相邻的数,它们的不同选法数为(1,2)g m n --;2) 元素1没有选中,那么不同的选法数为(,1)g m n -,由加法原理可得到递推公式:(,)(1,2)(,1)g m n g m n g m n =--+-,((1,),(,)0)g n n g n n ==, (2,)g n (1,2)(2,1)g n g n =-+-(1,2)(1,3)(2,2)g n g n g n =-+-+-=(1,2)(1,3)(1,1)(2,2)g n g n g g =-+-+++(2)(3)1n n =-+-++21n C -=(3,)G n (2,2)(3,1)g n g n =-+-(2,2)(2,3)(3,2)g n g n g n =-+-+-=(2,2)(2,3)(2,3)(3,4)g n g n g g =-+-+++222342((3,4)0)n n C C C g --=+++=32n C -=对一般的m 可以用数学归纳法证明1(,)mn m g m n C -+=。
求组合数用递推关系来求组合数的方法步骤为:对相邻组合数先建立某种递推关系;再利用递推关系求得所需要的结果。
这种方法的优越之处在于可较早的将问题转化为存计算问题。
【例5】若用(,)f n k 表示n 个不同元素12,,,n a a a 的k 元重复组合数,试讨论(,)f n k 的递推关系,并求解。
解:因为k 元重复组合可分成两种类型:第一种,是包含n a 的k 元重复组合,它的总数是(,1)f n k -;第二种,是不包含n a 的k 元重复组合,它的总数是(1,)f n k -,所以(,)(,1)(1,)f n k f n k f n k =-+- ······· (1) 即为所建立的递推关系。
下面再对它进行求解。
显然,对任何正整数n ,都有(,1)f n n =,而对任何正整数k ,又有(1,)1f k =,同理反复应用式(1)有(,2)(,1)(1,2)f n f n f n =+-==(,1)(1,1)(2,1)(1,2)f n f n f f +-+++即(1)(,2)(1)212!n n f n n n +=+-+++=,( 1,2,n =,) 由此可以设想,对任何正整数k 、n而言,公式(1)(1)(1)!(,)!!(1)!n k n n n k f n k k k n +-++-==- (2)都成立,并且(2)式是(1)式的解,易用数学归纳法证明(2)式。