主题:严蔚敏老师数据结构P55页算法3。5hanoi
#include<stdio.h>
#define M 4
void move(char a,int n,char b)
{
printf("\n%d %c %c",M-n,a,b);
}
void hanoi(int n,char x,char y,char z)
{
if(n==1)
{
move(x,1,z);
}
else
{
hanoi(n-1,x,z,y);
move(x,n,z);
hanoi(n-1,y,x,z);
}
}
main()
{
char x='x',y='y',z='z';
int n=M-1;
hanoi(n,x,y,z);
}
#define M 4
void move(char a,int n,char b)
{
printf("\n%d %c %c",M-n,a,b);
}
void hanoi(int n,char x,char y,char z)
{
if(n==1)
{
move(x,1,z);
}
else
{
hanoi(n-1,x,z,y);
move(x,n,z);
hanoi(n-1,y,x,z);
}
}
main()
{
char x='x',y='y',z='z';
int n=M-1;
hanoi(n,x,y,z);
}