void move(char x,char y)
{
int i;
if(x=='A'&&y=='B') i=1;
else
{
if(x=='A'&&y=='C') i=2;
else
{
if(x=='B'&&y=='C') i=3;
else
{
if(x=='B'&&y=='A') i=4;
else
{
if(x=='C'&&y=='A') i=5;
else
{
if(x=='C'&&y=='B') i=6;
}
}
}
}
}
printf("%d",i);
}
void hanoi(int n, char one, char two, thar three)
{
if (n==1)move(one,three);
else
{
hanoi(n-1,one,three,two);
move(one,three);
hanoi(n-1,two,one,three);
}
}
main()
{
int m;
printf("/ninput the number of diskes:");
scanf("%d",&m);
printf("The step to moving %3d disks:/n",m);
hanoi(m,'A','B','C');
}
前5个输出的结果如下图所示:
2
123
2162432
123156123453123
2162432165462162432465432162432
2
123
2162432
123156123453123
2162432165462162432465432162432
123156123453123156153456123156123453123456153453123156123453123
本文深入探讨了算法和数据结构的核心概念及其在实际应用中的关键作用,通过实例解析了算法优化策略与数据结构设计的重要性,为解决复杂问题提供有效路径。
&spm=1001.2101.3001.5002&articleId=6542245&d=1&t=3&u=b7740f4e24c84d74994e3a92ecbbf993)
5万+

被折叠的 条评论
为什么被折叠?



