数据结构课程设计说明书 车厢调度问题.doc
《数据结构课程设计说明书 车厢调度问题.doc》由会员分享,可在线阅读,更多相关《数据结构课程设计说明书 车厢调度问题.doc(9页珍藏版)》请在三一办公上搜索。
1、 车厢调度问题 摘要: 实现栈的基本操作,即实现类型。程序对栈的任何存取,即更改,读取和状态判别等操作,必须借助于基本操作。在操作过程中的任何状态下都有两种可能的操作:“入”“出”。 每个状态下处理问题的方法都是相同的,具有递归特性 。关键字:栈 递归 打印 0.引言数据结构是计算机科学与技术、软件工程及相关学科的专业基础课,也是软件设计的技术基础。数据结构课程的教学要求之一是训练学生进行复杂的程序设计的技能和培养良好程序设计的风格,其重要程度决不亚于理论知识的传授,因此课程设计环节是一个至关重要的环节,是训练学生从事工程科技的基本能力,是培养创新意识和创新能力的极为重要的环节。基本要求如下:
2、(1) 熟练掌握基本的数据结构;(2) 熟练掌握各种算法;(3) 运用高级语言编写质量高、风格好的应用程序。1.需求分析(1)这个实验要求我用栈实现车厢调度.(2)车厢的个数是由用户输入的.(3)程序会自动给车厢进行从1到 n的编号.(4)用户输入车厢个数后,程序打印出所有可能的车厢出站顺序.2.数据结构设计 在这个程序中存储结构是栈,对于栈的声明和定义如下:typedef struct SqStack int *top; /*栈顶指针*/ int *base; /*在栈构造之前和销毁之后.base的值为NULL*/ int stacksize; /*当前分配的存储空间*/ SqStack;
3、/*顺序栈的结构体声明和定义*/3.算法设计3.1 对算法的简单描述 这个实验中, 要求用到栈. 实现栈的基本操作,即实现类型。程序对栈的任何存取(即更改,读取和 状态判别等操作)必须借助于基本操作。在操作过程中的任何状态下都有两种可能的操作:“入”“出”。 每个状态下处理问题的方法都是相同的,具有递归特性 。栈实现是方便的 无论如何调度,我们的操作都是入栈和出栈,设定入栈为1,出栈为-1,对n列车 厢有2n次这样的操作,例如n=4,则有操作1111-1-1-1-1、1-11-11-11-1等.所以还要构造一个操作命令队列trainlist。在算法中还要用到递归算法,其本质为:一个数的进栈以后
4、 有两种处理方式: 要么立刻出栈,或者下一个数的进栈。 一个数的出栈以后 也有两种处理方式:要么继续出栈(栈不为空),或者下一个数的入栈。3.2栈的基本操作3.2.1构造一个栈void InitStack2(SqStack *S,int base_size) S-base=(int *)malloc(base_size * sizeof(int); if(!S-base) puts(ERROR!); return ; S-top=S-base; S-stacksize=base_size; /*构造一个空栈*/ 3.2.2 插入新的栈顶元素void Push2(SqStack *S, int
5、e) *(S-top+)=e; /*插入元素e为新的栈顶元素*/3.2.3 输出栈顶元素void Pop2(SqStack *S) int e; if(S-top=S-base) puts(ERROR); return ; e=*-S-top; printf(%d ,e); /*若栈不空,则删除s的栈顶元素,用e返回其值*/3.3 输入车厢数并给车厢编号printf(please input the number of the trains:); scanf(%d,&trainsize); if(trainsize=33) puts(the number is wrong!); return;
6、 for(i=0;i trainsize;i+) trainsourcei=i+1; /*给火车贴上从1到trainsize的编号*/4 程序实现4.1 源代码#include #include typedef struct SqStack int *top; int *base; int stacksize; SqStack; struct SqStack stack; /*定义一个栈变量*/ int trainsize; /*车厢个数*/ int trainsource33; /*车厢数组*/ void Show(int list_in);/*打印*/ void Schedule(int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构课程设计说明书 车厢调度问题 数据结构 课程设计 说明书 车厢 调度 问题
链接地址:https://www.31ppt.com/p-3944528.html