汉诺塔问题可视化算法(算法-汉诺塔)

汉诺塔是一种移动圆盘的游戏。

传说: 在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。即使是每微秒移动一次, 也需要5000世纪的时间

规则:

汉诺塔问题可视化算法(算法-汉诺塔)(1)

汉诺塔问题可视化算法(算法-汉诺塔)(2)

汉诺塔问题可视化算法(算法-汉诺塔)(3)

证明

数学归纳法

数学归纳法是证明某个命题关于整数n(对所有的n>=n0)成立的一种一般的方法。首先,当n为最小值n0时我们证明命题,这称为基础,然后假设对于包含再n0和n-1之间的所有值,已经证明命题成立,对于n>n0证明命题,这种方法称为数学归纳法。

根据以上内容,可知:

f(0)=0 f(1) = 1 f(2) = 3 f(3) = 7 f(4) = 15 f(5) = 31 …

好像有点规律, f(n) = 2^n -1

那么这个猜想正确吗?用数学归纳法证明一下。

证明

f(0) = 2^0 -1,

f(1) = 2^1 -1,

f(2) = 2^2 -1,都是正确的

假设n-1取代n的时候上述猜想成立,且对于n>0建立归纳,

f(n) = 2f(n-1) 1

= 2(2^(n-1)-1) 1

= 2^n-2 1

= 2^n -1

因此,对于n来说,上面的猜想依然成立

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页