//将a塔移动到b塔上
void hanoi(int n,int a,int b,int c)
{
if(n>0)
{
hanoi(n-1,a,c,b);
move(a,b);
hanoi(n-1,c,b,a);
}
}
hanoi塔的递归算法。要将塔从a移动到b上,首先将前n-1个盘移动到c上,再将a塔剩下的一个移动到b上,最后将c塔上的n-1个盘移动到b塔上。
//将a塔移动到b塔上
void hanoi(int n,int a,int b,int c)
{
if(n>0)
{
hanoi(n-1,a,c,b);
move(a,b);
hanoi(n-1,c,b,a);
}
}
hanoi塔的递归算法。要将塔从a移动到b上,首先将前n-1个盘移动到c上,再将a塔剩下的一个移动到b上,最后将c塔上的n-1个盘移动到b塔上。