递归式与和式
汉诺塔问题
三个柱子,
现在每次可以将某根柱子顶端的圆盘移动到另一根柱子顶端,要求这根柱子原本没有圆盘或者柱子顶端圆盘面积大于该圆盘.
求最小移动次数,使得所有圆盘移动到另一根柱子上.
不妨令
而我们一定可以找到一种方案,使得前
而如果我们要移动最大的圆盘,一定要保证前n-1个圆盘已经移走到一根柱子上.因此一定有:
Example1(《具体数学》1.2)
汉诺塔问题,所有圆盘一开始均在最左边的塔A上,要将他们全都移动到最右边的塔C上,不允许在二塔之间直接移动,求最小操作次数.
Solution 1
考虑设
首先因为不能直接在AC之间移动,因此一定是先要把最大的圆盘移动到中间塔上,这一步要求先把所有圆盘移动到C上,然后需要再把这些圆盘移动回A上,因此,显然有:
考虑如何求该式子的封闭形式,令
注意到
Example2(《具体数学》1.4)
汉诺塔问题,问是否存在一种符合规则的初始摆放方式,使得将其全部移动到其中一根柱子所用次数小于等于
Solution 2
不存在.
证明方式类似原初问题的证明,考虑最大的那个圆盘是否到达终点.如果到达则可以去掉它,用数学归纳证明不存在;如果还未到达,同样用数学归纳得到不等式.
Example3(《具体数学》1.10)
汉诺塔问题,但是移动圆盘时只能从A移动到B,从B移动到C,从C移动到A.一开始所有圆盘都在A,求将它们全部移动到B的最小操作次数,以及将他们从B移动回A的最小操作次数.
Solution 3
令
先考虑边界情况,
我们考虑,由于柱子间在移动过程中是无区别的,因此
在将最大的圆盘移动到下一根柱子前,一定要先把上面的圆盘全部移动到上一根柱子上,最后再移动回来.
显然有
在将最大的圆盘移动到上一根柱子前,一定要先把他移动到下一根柱子上,这个步骤要求我们把其他的圆盘移动到上一根柱子上.在这之后,我们又要把所有圆盘放到上一根柱子上来让最大圆盘到目标柱子,最后再移动回来.
有
Example4(《具体数学》1.11)
汉诺塔问题,但是每种大小的圆盘有两个,且其中一个可以摆放在另一个的上面.
a.如果相同圆盘无区别,求最小操作次数.
b.如果相同圆盘有区别,且最后需要还原原本二者的上下顺序,求最小操作次数.
Solution 4
a.仍然令
b.令
我们进行了四次a操作,那么次下面两个圆盘自然就顺序与原本相同了,因此这里的
Example5(《具体数学》1.12)
类似Problem11,但第
Solution 5
无区别,只是
如果求封闭形式的话,显然有
递归式的封闭形式
在上述问题中,我们已经有了以下式子:
如果
换句话说,我们想要把
寻找循环节
Example(《具体数学》1.8)
解递归式:
Solution
注意到
显然该递归式存在长度为
数学归纳法
观察T序列的前几项,可以发现似乎有
现在我们来证明它:
1.该公式对于
2.若该公式对
因为有
以上过程被称为数学归纳法.
Example(《具体数学》1.9)
求证:
Solution
使用反向归纳法.
1.
2.若该式子对
不妨令
同时有
3.若该式子对
令
则显然
由1和2,我们知道了对于n是二的整数次幂的情况,该公式成立,由3,我们又可以知道该公式对于任意一个存在比他大的二的整数次幂的数成立,因此该公式成立.
换元
考虑令
这个做法可以做掉所有形如
换元做掉这个式子.
转化和式
考虑递归式
令
而我们也会发现
Example1(快速排序时间复杂度)
结论:排序
不妨考虑两边同时乘以
显然也有
二式相消,有
而同时有
Example2
已知
注意到
成套方法
如果我们有
\alpha & n=1\
2f(\frac n 2)+\beta & n=2k,k\in \mathbb{N_+}\
2f(\frac {n-1}2)+\gamma &n=2k+1,k\in \mathbb{N_+}
\end{cases}
其中
该如何求出
由于所有的未知数都是以加法运算连接,显然有
那无论
接下来,我们考虑取
例如,当
同理,
显然可以通过解方程求得
这个方法显然是通用方法,式子仅仅是例子,事实上,只要我们能证明
这个东西的原理是什么呢?显然是因为其中存在一个线性无关性对吧.
线性递推
一个常系数的
当
特征方程
我们称方程
二阶线性齐次递推
若其特征方程有两个不同的根
若其特征方程有两个相同的根
先考虑前者的证明,首先考虑对于
若
接下来考虑数学归纳:
接下来考虑后者,首先我们有
接下来我们考虑数学归纳:
我们接下来只需证明
更一般的情况
直接在复数域上定义
在此基础上观察线性递推
再再进一步
我们都知道矩阵加速:也就是
约瑟夫问题
考虑n个人围成一圈,从第一个人开始,每隔一个人就杀掉一个人.如10个人围成一圈时,杀人的顺序是
首先一定有J(1)=1.考虑第一遍杀掉n号或者n-1号之后,对整个圆圈进行重新编号.
那么当人数是偶数时,我们有
整理得到:
仍然可以使用数学归纳,如果令
有
要是注意力没有那么集中怎么办呢?考虑到这个东西显然和取膜有着不可分割的关系,我们不妨从
这下相信
Example(《具体数学》1.15)
求约瑟夫问题中最后一名被杀死的人的编号.
Solution
显然有:
从
显然
和式
和式的基本运算
分配律:
一般分配律:
结合律:
交换律:
交换求和顺序:
和式的封闭形式
交换顺序法
Example1(等差数列求和)
我们有:
Example2(切比雪夫单调不等式)
令
考虑恒等式
那么我们有:
显然有以下式子:
(\sum_{i=1}na_i)(\sum_{j=1}nb_j)\geq n\sum_{i=1}^na_ib_i,\forall i<j,a_i\leq a_j且b_i\geq b_j\
上式被称为切比雪夫单调不等式.
值得一提的是,切比雪夫单调不等式其实是排序不等式的一个特化版本.
Example3(拉格朗日恒等式)
证明:
有:
扰动法
Example1(等比数列求和)
而
Example2(平方和公式)
如果直接对该公式使用扰动法:
我们无法得到
那以此类推,我们设
Example3(《具体数学》2.20)
令
Solution3
不妨考虑
Example4(《具体数学》2.21)
求
Solution 4
转化为递归式
考虑和式
因此递归式所可以使用的方法同样可以在和式中使用.
Example1(《具体数学》2.13)
求
Solution1
令
不妨令
令
令
显然可解得
而原式中,
Example2(《具体数学》2.19)
有
Solution 2
令
令
转化为积分形式
Example1(平方和公式)
考虑先求出一个近似解,然后再求误差.
考虑函数
接下来,我们考虑求得二者之间的误差,设
这样就得到了递归式,可以求得封闭形式.
还有一种方法是:
这是一个简单的和式.而
Example2(某浙江高考题)
已知
考虑构造一个函数
这个第一眼看上去就很有道理,而事实上也确实很有道理,原因是根据拉格朗日中值定理,
然后,原式子就变成了一个微分方程了,带入
令
算到这里,我们可以很轻易使用数学归纳法算出
然后我开始估计了一下这个
那么这个
如何理解这个级别?考虑别乱动
这警戒我们以后乱估计的时候千万别把
这个时候大概估计一下会发现
展开和收缩
Example1(平方和公式)
我们有:
整理得到
Example2(《具体数学》2.14)
求
Solution 2
Example3(《具体数学》2.15)
求
Solution 3
ExampleEX
求
SolutionEX
ExampleEX2
求
SolutionEX2
令
有限微积分
移位算子
定义移位算子
差分算子
定义差分算子
另外,不难发现有
逆差分算子
定义逆差分算子
这里的
值得一提的是,这里的
定和式
如果
值得一提的是,如果
但如果
事实上,我们一定有:
一些基本的公式
类比无限微积分中的
类比无限微积分中的
类比无限微积分中的
根据组合数公式,有:
Example(平方和公式)
我们有:
那么:
整理即可得到封闭形式.
值得一提的是:
与前面的方法不同,这里没有使用三次的二项式公式,而是使用了二次的斯特林公式负责将一般幂转化为下降幂.
高阶差分
考虑一阶差分是
类似地,我们可以通过归纳法证明
事实上有一种更简单的证明方法,由于
另外,不难发现如果
Example([yLOI2020]灼)
首先不难发现对于一个位置,有意义的只有相邻的两个虫洞,设这两个位置分别为
不难写出期望转移式子:
接下来如何做呢?
我们先对第一个式子进行变形:
牛顿级数
令
我们设
也就是说,任何多项式都可以表示为二项式系数的倍数之和,我们称这样的展开式为
于是不难发现有:
另外,如果我们展开一下
如果我们将多项式还原,由于
另外,如果
于是我们可以类似泰勒级数写出无限牛顿级数:
Example
求
如果我们令
分部求和法则(Abel求和法)
两边取不定和,即可得到分部求和法则:
分部求和用一般和式表达如下,下式又被称为Abel求和法:
对于
取两组数列
Example1
求
根据分部求和法则,我们有:
改为定和式形式,显然有:
Example2
求
令
带入分部求和法则,显然有:
带入即可求出原式
Example3(《具体数学》2.23)
求
Solution 3
令
根据分部求和法则,有:
Problem 4(《具体数学》2.24)
求
Solution 4
令
根据分部求和法则,有:
评论