发布网友 发布时间:2022-05-10 03:40
共2个回答
懂视网 时间:2022-05-10 08:01
python语言怎么解决汉诺塔问题?下面给大家介绍一下解决步骤:
第一步打开电脑的编辑工具。
再创建一个python项目。
第二步创建一个haooi函数。
再配置函数中的数值名称。
热心网友 时间:2022-05-10 05:09
解汉诺塔最简单的做法就是递归:
类似如何将大象装进冰箱:1)将冰箱门打开;2)把大大象放进去;3)把冰箱门关上……
我们将所有的盘都在同一个杆上从大到小排列视为【完美状态】,那么,目标就是将最大盘片为n的完美状态从a杆移到b杆,套用装大象的思路,这个问题同样是三步:
1)把n-1的完美状态移到另一个杆上;
2)把n移到目标杆上;
3)把n-1的完美状态移到目标杆上。
如下:
追问请问代码中的i=move函数那里再怎么理解呢追答move就是移动。
每一个移动包含最少一个动作,最多三个动作:
转移到可以进行核心操作的状态(第一个s=move(...))
进行核心操作(pring.....)
转移到最终状态第二个s=move(...))
这跟把大象装进冰箱是一个道理。