汉诺塔的由来

汉诺塔是源自印度神话里的玩具。

上帝创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上安大小顺序摞着64片黄金圆盘。

上帝命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。

有语言说,这件事完成时宇宙会在一瞬间闪电式毁灭。也有人相信婆罗门至今还在一刻不停地搬动着圆盘。

汉诺塔与宇宙寿命

如果移动一个圆盘需要1秒钟的话,等到64个圆盘全部重新落在一起,宇宙被毁灭是什么时候呢?

让我们来考虑一下64个圆盘重新摞好需要移动多少次吧。1个的时候当然是1次,2个的时候是3次,3个的时候就用了7次......这实在是太累了

因此让我们逻辑性的思考一下吧。

4个的时候能够移动最大的4盘时如图所示。

到此为止用了7次。

接下来如下图时用1次,在上面再放上3个圆盘时还要用7次(把3个圆盘重新放在一起需要的次数)。

因此,4个的时候是

“3个圆盘重新摞在一起的次数”+1次+“3个圆盘重新摞在一起需要的次数”

=2x“3个圆盘重新摞在一起的次数”+1次

=15次。

那么,n个的时候是

2x“(n-1)个圆盘重新摞在一起的次数”+1次。

由于1 个的时候是1次,结果n个的时候为(2的n次方减1)次。

1个圆盘的时候         2的1次方减1

2个圆盘的时候         2的2次方减1

3个圆盘的时候          2的3次方减1

4个圆盘的时候         2的4次方减1

5个圆盘的时候         2的5次方减1

........

n个圆盘的时候        2的n次方减1

也就是说,n=64的时候是(2的64次方减1)次。

因此,如果移动一个圆盘需要1秒的话,

宇宙的寿命=2的64次方减1(秒)

用一年=60秒x60分x24小时x365天来算的话,大约有5800亿年吧。

据说,现在的宇宙年龄大约是150亿年,还差得远呢。

汉诺塔_-Chaz-_新浪博客相关推荐

  1. 模电学习心得(转载)_史蒂文森sun_新浪博客

    个人建议:认真分析几个典型电路,主要掌握晶体管的等效模型,以及在电路中怎么等效.其他的都很容易解决了.只要会等效了,模电就是完全是电路的内容.其实一点都不可怕,开始不要太关注乱七八糟的内容,抓住主要的 ...

  2. 软件项目开发模式_小晓_同学__新浪博客

    螺旋开发模式:部分模块开发还可以再继续开发别的模块,适合于项目前期需求不确定的情况 对于每一个模块一个个开发:分析.设计.编码.测试.上线: 好处:有效的降低软件项目风险,(做出的产品要尽量满足客户需 ...

  3. 当前电气自动化专业就业形势调查报告 (转载)_史蒂文森sun_新浪博客

    当前电气自动化专业就业形势调查报告  尽早了解本专业的设置及就业情况有助于我们确定自己的发展方向,当竞争工作时,能有更多的优势.为此,本人于2012年2月18日至3月10日进行了调查,通过文献查阅.实 ...

  4. [转载]R软件包vegan教程 5.1 函数adonis的使用_圈圈Bio_新浪博客

    原文地址:R软件包vegan教程 5.1 函数adonis的使用作者:mateco 5 差异和环境(Dissimilarities and environment) 已经讨论了排序的环境因子解释,和环 ...

  5. 串管理——鸟友们快来看啊——看清楚点_悟sphenic_新浪博客

    串管理--鸟友们快来看啊--看清楚点 在内存有限的情况下,应当特别注意串的"繁殖".一种常见的做法是使用+操作符,而这往往会带来问题,如果把多个串通过+操作符连接在一起构成一个串, ...

  6. 在线画图工具-CCA与RDA分析_圈圈Bio_新浪博客

    网站:http://www.qplot.cn:3838/sample-apps/006-CCA_RDA/ RDA分析(Redundancy analysis),即冗余分析,对比主成分分析可以发现,其实 ...

  7. Bug管理的流程和几个重点_悟sphenic_新浪博客

    Bug管理的流程和几个重点 前两天谈论的bug管理的问题,大家列举了很多bug跟踪软件,我觉得工具是一部分,但是主要还在bug管理的流程上. 在这些bug管理工具里,bug的一个最重要的属性就是&qu ...

  8. 删除PO交货计划行后PR对应的订购数量不更新问题_用户3231157403_新浪博客

    客户提出一个issue. 当PO item 有两个PR时 删除其中一个行项目:PR10234539 然后查看PR 发现这里是不对,订购数量应该是0,没有更新 解决方案: 2265448 - Order ...

  9. 在线画图工具-venn维恩图_圈圈Bio_新浪博客

    网址: http://www.qplot.cn:3838/sample-apps/001-venn/ plot venn 维恩图,也叫文氏图,用于显示元素集合重叠区域的图示.可以表示集合与集合之间的相 ...

  10. Cookie和session的区别以及安全性_小晓_同学__新浪博客

    1.cookie 是一种发送到客户浏览器的文本串句柄,并保存在客户机硬盘上,可以用来在某个WEB站点会话间持久的保持数据. 2.session其实指的就是访问者从到达某个特定主页到离开为止的那段时间. ...

最新文章

  1. C# DataTable分页处理
  2. [转]如何写出不可维护的服务端程序
  3. Android elevation的使用阴影
  4. python os 常用方法
  5. 深度linux登录后界面卡死,Deepin Linux 15(.1)启动即卡死的问题
  6. 扇贝和不背单词_你还没找到中意的背单词APP?我都试过,我来帮你盘点盘点
  7. 【C++笔记】对象模型和this指针
  8. filename.whl is not supported wheel on this platform 部分第三方库无法安装的解决办法
  9. Android教程 - - adb工具包的安装
  10. 【PyCharm】PyCharm破解版在系统崩溃后无法启动
  11. python是一种什么类型的编程_python是什么类型的编程语言
  12. ARM开发(二)ARM体系结构——ARM,数据和指令类型,处理器工作模式,寄存器,状态寄存器,流水线,指令集,汇编小练习题
  13. oracle繁体字筛选,Oracle数据库字符集浅析
  14. 如何在网页里插入3D模型并进行互动展示?
  15. Android 安装自身更新APK时,包解析错误或无法访问文件的可能原因
  16. 内存对齐的规则以及作用 verygood!的一篇文章!
  17. 杭电多校第一场第三题 Backpack(异或dp+bitset)
  18. GO micro V3环境搭建
  19. 为什么ppt图形卡配置不正确_PPT:PowerPoint 检测到您的图形卡配置不正确,可能无法获得最佳幻灯片放映体验...
  20. Android 客户端起HttpServer NanoHttpd

热门文章

  1. 世界各国首都经纬度-json
  2. [C语言]二维数组传参的格式(详细+总结)
  3. MySQL中怎么对varchar类型排序问题(数字字符串和汉字拼音的顺序)
  4. 从教女儿下棋谈启蒙教育
  5. 微信公众平台如何审核
  6. 云编程那些事1 - 把开发过程彻底云化
  7. 网页倒计时跳转JS代码
  8. 计算机专业面试银行的自我介绍,银行面试自我介绍1分钟
  9. Python将PDF转换为图片
  10. 【中级—,android开发入门pdf