汉诺塔 递归实现

游戏简介:

游戏里有三根金刚石柱子,左边的柱子上从下往上按照大小顺序摞着N片黄金圆盘。玩家需要做的是把圆盘从下面开始按从大顺序重新摆放在右边的柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。

汉诺塔 递归实现

 void Move(char a,char b)
{
  printf("%c->%c\n",a,b);

}
void Hanio(int n,char a,char b,char c)
{
  if(n==1)
  {
    Move(a,c);

  }
  else 
	 {
		 Hanio(n-1,a,c,b);
     Move(a,c);
	 Hanio(n-1,b,a,c);
  }
}