⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hanoi.cpp

📁 数据结构课程实验之一
💻 CPP
字号:
#include "iostream.h"

int counter=0;   //用于统计操作的步骤数

void move(char one,char two){
cout<<"\t"<<one<<"-->"<<two<<endl;
counter++;
}

void Hanoi(int n,char one,char two,char three){   //汉诺塔问题的递归实现
if(n==1) move(one,three);
else{
   Hanoi(n-1,one,three,two);
   move(one,three);
   Hanoi(n-1,two,three,one);
}
}

void main()
{
int n;
char one,two,three;
          
cout<<"此为汉诺塔的简单实现,设三个支架依次为 A,B,C\n";
cout<<"   请输入盘子的个数 n : "<<endl;
cin>>n;
one='A';
two='B';
three='C';

cout<<"移动的步骤为:\n";
Hanoi(n,one,two,three);
cout<<"总的操作步骤为: "<<counter<<endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -