具体数学第一章总结

第一次写这种总结性的东西,在写的过程中碰到了许多问题。这一章是通过对三个问题的解决来讲述递归的,前两个问题算是抛砖引玉,也就是让你了解熟悉递归,而第三个问题是核心,它告诉了你如何去研究并找到递归问题的解,如何推广我们得到的特殊解,可是我当时并没有意识到这些,只是觉得要总结,总结就要全面,所以构思了半天如何压缩它的讲解,同时如何在压缩的过程中保证把关键的部分说的足够清楚和全面,从而保证自己回头的看的时候快速回忆起来。但从这个总结的过程来看,自我感觉我应该是想错了,先不说这个总结的思路对不对,就看这个压缩它的内容的难度,写这本书的人语言组织水平应该是比一般人高很多,除非他净说些没用的,否则再去压缩他写的内容真的很难,我是做不动,另外,总结的作用当然是为了便于复习,那这个推导过程到底要不要,我当时是觉得这些肯定要写,但现在想来,不要写最好,你回过头来看不是从零开始学他,除非你学完之后很久很久再来看,那样我建议直接重新学吧,我们再来看的时候其实还是有印象的,我们要的是快速的回忆起来这上面的知识点,我们不需要很详细的再去看一遍他究竟是怎么来的,另外我们再来看还有一种原因就是我们忘了某一个公式,所以我们再回来查找下,所以这个时候如果我们总结的时候加上一堆推导,那么这个内容其实是很庞大的,我们找的慢,另外其实我们看下公式或者我们当时简略的说明就可以回忆个大概了,根本不需要那么详尽的推导,如果真的要看,直接看书找也好找。
总之,总结就是要简单


这是移动八个圆环的问题,我们可以把这个问题进行推广,如果是n个圆环,最少的移动次数是多少
我们用f(n) 表示n个圆环时对应的答案,那么我们可以得到递推公式

f(n)=2*f(n-1)+1
通过递推公式可以很容易得获得通项公式 f(n)=2^(n)-1



LINES IN THE PLANE
平面上n条直线所界定得区域得最大个数是多少?

直接给出递推公式 f(n)=f(n-1)+n
通项公式 f(n)=1+s(n)( s(n)表示以一为首项,公差为1的等差数列的前n项和)

在这道题中,假设我们把直线换成折线(一个点引出两条射线) ,那么答案又是多少?
递推公式 l(n) =f(2*n)-2*n

通项公式 l(n)=2*n*n-n+1


THE JOSEPHUS PROBLEM(约瑟夫问题)

我们直接考虑这样一个简化了的约瑟夫问题
从围成的标号1到n的圆圈的n个人开始,每隔一个删去一个人,直到只有一个人幸存下来


我们先看当人数比较少的时候,幸存者的编号是什么?看是否能找到或者猜出某种规律,然后再去验证我们的猜想是否正确

为了方便我们用J(n)表示人数为n时的幸存者编号
 
n 1 2 3 4 5 6 7 8 9 10
J(n) 1 1 3 1 3 5 7 1 3 5
                 
                   

好吧,好像不太好发现。
直接说吧,我们考虑下如果n是偶数是什么情况,首先绕这个圈走一遍,所有的偶数编号都被消除了。而此时正好剩下了n个人,

关键就在这,这n个人依旧从一开始奇数,隔一个人消除一个,如果我们对这些人重新编号,再把他们编程1到n,那么最后的幸存者就是J(n) ,根据编号的规则,实际的幸存应该是2*J(n) -1
那么我们就找到了一个递推公式了,J(2*n)=2*J(n)-1 

知道了n为偶数的递推公式,奇数的也就不难了 J(2*n+1)=2*J(n)+1
再和J(1)=1结合起来,我们就得到了解决这道题的递推公式

J(1)=1
J(2*n)=2*J

J(2*n+1)=2*J(n)+1


有了递推公式,通项公式自然少不了


我们先做出一个表,跟刚才那个一样,再来找一次规律

这样分一下是不是规律就显而易见了

的确,通项公式是 J(2^(m)+l)=2*l+1 (m>=0,0<=l<=2^m)
这个可以通过归纳法来证明,不难证明,这个是对的


下面我们对这个公式进行推广,从而得到更一般的形式
我们依旧可以用归纳法来证明这个结论是正确的


我们还可以进一步加以推广
具体数学


猜你喜欢

转载自blog.csdn.net/qq_41776911/article/details/81055445
今日推荐