汉诺塔三层步骤 如何理解汉诺塔递归?
浏览量:2538
时间:2021-03-12 09:26:58
作者:admin
如何理解汉诺塔递归?
河内塔可以理解为一个移动塔的游戏,移动n层塔从一个支柱到另一个
2。这是河内塔的递归原型,汉诺塔(n,a,c)-n层塔从一根柱子移动到c柱;每次你必须返回到这个原型,它被认为是递归完成
!3. 在中间B柱的帮助下,河内塔的原型被写为hunnuota(n,a,B,c)-n层塔在B柱的帮助下从a柱移动到c柱,这应该被理解;
4。递归需要一个出口,这是控制条件。当n=1时,塔可以直接从a移到C,C是出口
5。当n>1时,这一步是理解汉诺塔递归的关键,它必须形成n-1层移到C柱的形式,可分为三步:
A.如果n层不能同时移动,可以理解为先将A上面的n-1层移到B柱
Ba柱,塔的剩余n层移到C柱,
C,然后在B列上形成n-1层移动到C列——
递归完成
既然你想用简单的白话解释递归算法,我就给你解释一下,确保你能理解。
有个熟悉的故事,正好可以解释递归。
这个故事不断地调用自己,递归是一个函数多次调用自己。不同的是递归不能像这个故事那样多次调用自己。递归必须有终止条件,它将在多次调用后终止。
这个解释很口语化。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。