- ·上一篇文章:高一物理必修一知识框架总结图(高一必修一物理章节框架)
- ·下一篇文章:文综选择题答题技巧大全及答案(文综选择题答题技巧大全图片)
汉诺塔游戏递归算法(汉诺塔 递归)
汉诺塔游戏,是非常著名的智力趣味题,在很多算法书籍和智力竞赛中都有涉及。
汉诺塔游戏的基本规则是:在一块板子上,有三根编号分别为A、B、C的杆,在A杆上按自下而上、由大到小的顺序放置着64个(或其他数目)圆盘,每次只能移动一个圆盘,并且在移动过程中三根杆上都始终保持大盘在下、小盘在上的状态,操作过程中圆盘可以在A、B、C任意一杆上,要如何把A杆上的圆盘全部移到C杆上?
以3个圆盘为例:将3个圆盘按由小到大的顺序分别记作P1、P2、P3。按照规则将三个圆盘从A杆移至C杆,则需以下步骤:(1)先将P1移至C杆,再将P2移至B杆,然后将P1移至B杆,此时P1和P2均在B杆上(需3步);(2)将P3移至C杆(需1步);(3)将P1移至A杆,将P2移至C杆,最后将P1移至C杆(需3步)。
在此过程中,要将P3移至C杆,先将C杆当作中介,将P1移至C杆;再将P1、P2先移至B杆,借用B杆做中介;再将P2移至C杆时,又先将P1移至A杆,借用了A杆做中介。(总共7步完成)
以此为例,如何完成其他数量圆盘的移动操作呢?
当n=1时,只需将编号为1的圆盘从A柱直接移至C柱上即可。
当n=2时,利用B柱作为辅助柱,先将圆盘1移至B柱,再将圆盘2由A柱直接移至C柱,然后再将圆盘1由B柱移至C柱。
当n=3时,同样利用B柱作为辅助柱,依照上述原则,先设法将圆盘1、2移至B柱,待圆盘3由A柱移至C柱后,再依照上述原则设法将圆盘1、2移至C柱。
......
依此类推,当n>1时,需利用B柱作为辅助柱,先设法将压在编号为n的圆盘上的n-1个圆盘从A柱(依照上述原则)移至C柱,待编号为n的圆盘从A柱移至C柱后,再将B柱上的n-1个圆盘(依照上述原则)移至C柱。
游戏的移动操作很简单,但是如何将64个圆盘从一根杆子上移到另一根杆子上,并且始终保持上小下大的顺序,一共需要移动多少次才是让人头疼的问题。游戏过程中不难发现:不管把哪一个圆盘移到另一根杆子上,移动的次数都要比移动上面一个增加一倍。这样,移动第1个只需1次,第2个需2次,第3个需4次……第64个需263次。
奇妙的汉诺塔游戏所含有的数学知识饱含着人类的智慧。
来源: 新华网
相关文章:
第1篇 高中物理力的合成与分解技巧(物理高中力的合成与分解) 作者:admin
三、力(常见的力、力的合成与分解)(1)常见的力1.重力G=mg(方向竖直向下,g=9.8m/s2≈10m/s2,作用点在重心,适用于地球表面附近)2.胡克定律F=kx{方向沿恢复形变方向,k:劲度系数(N/m),x:形变量(m)}3.滑动摩擦力F=μFN{与物体相对运动方向相反,μ:摩擦因数,FN:正压力(N)}4.静摩擦力0≤f静≤fm(与物体相对
第2篇 金属及其化合物知识点总结(高中化学金属及其化合物) 作者:admin
金属及其化合物一、金属活动性Na>Mg>Al>Fe。二、金属一般比较活泼,容易与O2反应而生成氧化物,可以与酸溶液反应而生成H2,特别活泼的如Na等可以与H2O发生反应置换出H2,特殊金属如Al可以与碱溶
第3篇 清华大学2018年自主招生人数(清华大学2018自主招生试题数学) 作者:admin
6月10日,清华大学2018年自主招生考试全面启动,2018年清华大学自主招生、领军计划依然在全国设置多个考点,考生可就近选择。自主招生测试为初试和复试。一、笔试时间初试时间为6月10日上午9:00-12:00,共3个小时。二、笔试模式初试采用笔试形式,理科类:数学、物理、化学;文科类:数学、语文、历史。清华理科笔试都是选择,共75题,数学35道题,
第4篇 高考语文基础知识训练试题第十三套答案(高考语文基础知识训练试题第十三套卷) 作者:admin
1.下列划线字的读音全部相同的一项是()A.行旅行头行将就木行贿受贿B.给予给水自给自足不给面子C.测量掂量丈量土地量入为出D.应该应届得心应手理应如此2.下列各组词语中,字形全都正确的一组是()A.脉搏扶直贫困晶莹寥若辰星B.焕发一幅对联关键性格不合C.提纲情有可原厮打连年歉收D.幅射绿草如茵松弛旁征博引3.依次填
第5篇 甲烷的氧化反应现象(甲烷氧化的化学方程式) 作者:admin
甲烷的氧化反应最基本的就是燃烧,高考网为大家整理了《2016高考化学知识点:甲烷的氧化反应》,供大家参考,更多关于甲烷的氧化反应知识点详解请关注高考网。2016高考化学知识点:甲烷的氧化反应甲烷氧化反应最基本的就是燃烧:甲烷完全燃烧:CH4+2O2=CO2+2H2O甲烷不完全燃烧:2CH4+3O2=2CO+4H2O甲烷