数据结构编程-汉诺塔
10页1、数据结构课程Project 3汉诺塔Type:IndividualProgrammer: Tester:Report Writer: Date of completion:2010/11/10第一章: 绪论问题背景描述汉诺塔游戏是这样的:有三个桩(桩 1,桩 2 和桩 3)和 N 个半径不同的盘子。初始所有的盘子按半径从小到大堆叠在桩 1 上,半径最小的盘子在最上面。规则:每次只可以移动一个桩上最顶端的盘子到另一个桩上,而且不可以把大盘子堆在小盘子上。问题是要把所有盘子移动到桩 3 上。每次用两个整数 a (1 #include#define STACKSIZE 10 /*动态分配堆栈存储量*/FILE *fp_in = NULL; /*输入文件指针*/FILE *fp_out = NULL; /*输出文件指针*/typedef struct int *base;int *top;int stacksize;stack; /*定义堆栈*/stack initstack(stack stake)stake.base=(int*)malloc(STACKSIZE*sizeof(int);i
2、f(!stake.base) exit(0);stake.top=stake.base;stake.stacksize=STACKSIZE;return stake; /*堆栈初始化*/stack push(stack stake,int plate)*stake.top+=plate;return stake; /*将 plate 压入堆栈*/stack pop(stack stake)if(stake.top!=stake.base) -stake.top;return stake; /*将栈顶元素弹出*/int getplate(stack stake)if(stake.top=stake.base) return 0;else return *(stake.top-1); /*若栈不空则返回栈顶元素,否则返回 0*/void destroysk(stack stake)free(stake.base); /*销毁栈*/void func(int n,int m) /*操作函数,处理一个测试样例*/int j=n,k=1,i,from,to,plate,topplate,law=1;stack stake3; /*定义一个栈顶数组*/for(i=0;i=1;j-) /*将 n 个盘子从大到小放入桩 1*/stake0=push(stake0,j);for(k=1;k=topplate&topplate!=0)fprintf(fp_out, -%dn,k);law=0;break; /*如果被移盘子号比目的桩原顶层盘大,无效移动,输出-k*/staketo-1=push(staketo-1,plate); /*将盘子移入该桩*/if(stake2.top-stake2.base)=n)fprintf(fp_out, %dn,k);break; /*成功将桩 1 所有盘子移到桩 3,输出k*/if(k#define N 4void main()int i,j,k,t;printf(大小为:%dn,N);for(j=0;jN;j+)for(i=0;iN;i+)t=(i+j)%N;for(k=0;kN;k+)printf(%d,(k+t)%N+1);printf(n);printf(n);
《数据结构编程-汉诺塔》由会员mg****85分享,可在线阅读,更多相关《数据结构编程-汉诺塔》请在金锄头文库上搜索。
高中数学配套课件:第1部分 第二章 2.2 2.2.1 用样本的频率分布估计总体分布
高中数学必修2红对勾答案1-1-2-2
高中数学全程复习方略第二章 圆锥曲线与方程 章末总结 阶段复习课(共57张ppt)
高三文科数学一轮复习数列5--5
高一数学对数函数课件
马克思主义政党是工人阶级的先锋队
青岛版数学六年级上册第八单元百分数的整理和复习1
阿拉伯糖操纵子
逻辑基本规律1
选修4《化学反应速率和化学平衡》 第3节 化学平衡(5) 有关化学平衡常数及转化率的计算
辅修用 辅助费用分配
软件无线电 第3章 多模式调制解调
跳槽员工与辞退员工管理技巧及典型案例解析(ppt 40)
费用组成(工管、辅修、专升本)
财政学公共支出课件
苏教版数学四年级上册《平行和相交(一)》课件
船舶推进第2章 螺旋桨几何特征
自考第3章4调和函数
自动控制课件 第4章
育新小学 魏秀珍
2022-09-03 8页
2023-09-24 4页
2023-05-15 33页
2022-11-13 7页
2023-04-17 2页
2022-08-18 3页
2024-02-21 11页
2023-06-25 11页
2023-02-09 6页
2023-11-17 8页