首页 » 技术分享 » hanoi塔问题解析(一) c++实现

hanoi塔问题解析(一) c++实现

 

什么是hanoi塔?

汉诺塔问题:古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子,盘子大小不等,大的在下,小的在上。有一个和尚想把这64个盘子从A座移到B座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。如下图

hanoi塔图示

问题解答

问题定义
我们把左边的柱子叫做A,中间的柱子叫做B,右边的柱子叫做C

hanoi`塔的搬运过程;
i :左边的柱子只有两个圆盘

我们先假设在A柱子上只有两个圆盘,不用图我们用大脑想象出来最佳流程就是,现在最小的放在B柱子上面然后把大的放在C上面,最后把B柱子上面的小圆盘放在C柱子上。

转载自原文链接, 如需删除请联系管理员。

原文链接:hanoi塔问题解析(一) c++实现,转载请注明来源!

0