hanoi.h
来自「汉诺塔算法演示程序」· C头文件 代码 · 共 34 行
H
34 行
#pragma once
#include "basicalgorithm.h"
#include "Singleton.h"
enum Stock{A,B,C};//三个杆的编号
typedef struct{
Stock st;//在那根杆上
int layer;//在杆上的第几层
}Pan;
class CHanoi:
public CBasicAlgorithm
{
public:
CHanoi(void);
~CHanoi(void);
public:
virtual void doAlgorithm(CView *pView,CDC* pDC);
virtual void initial(CView *pView,CDC* pDC);
protected:
void doHanoi(int n,Stock x,Stock y,Stock z);
void move(Stock origin, int n, Stock target);
void pause(float ftime);
private:
int pieNum;
int stockCount[3];//每根杆上的圆盘数
Pan *pies;//pie从1开始,到n
int nTotalMoveCount;//总移动次数
CDC *pDC;
CView *pView;//指向视图指针
};
typedef NormalSingleton<CHanoi> Hanoi;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?