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

📄 12_2_1.cpp

📁 王红梅编《数据结构》大多数的实验源码。内附详细的实验报告。
💻 CPP
字号:
#include "TowerStack.h"
#include <iostream.h>

void Move(TowerStack *a, TowerStack *b)
{
	b->Push(a->Pop());
	cout << a->GetName() << "->" << b->GetName() << endl;
}

void Hanoi(int n, TowerStack *a, TowerStack *b, TowerStack *c)
{
	if (n == 1)
		Move(a, c);
	else
	{
		Hanoi(n - 1, a, c, b);
		Move(a, c);
		Hanoi(n - 1, b, a, c);
	}
}

void main()
{
	while (true)
	{
		TowerStack a('A');
		TowerStack b('B');
		TowerStack c('C');
		int n;
		cout << "请输入碟子的个数:";
		cin >> n;
		int disks[MAX_SIZE];
		for (int i = n - 1; i >= 0; i--)
		{
			disks[i] = i;
			a.Push(&disks[i]);
		}
		try
		{
			Hanoi(n, &a, &b, &c);
		}
		catch (char *s)
		{
			cout << s << endl;
		}
	}
}

⌨️ 快捷键说明

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