最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

源代码:车厢调度:数据结构课程设计

来源:动视网 责编:小OO 时间:2025-09-28 00:59:21
文档

源代码:车厢调度:数据结构课程设计

源代码::↓课程设计任务书及成绩评定课题名称车厢调度Ⅰ、题目的目的和要求:1、设计目的巩固和加深对数据结构的理解,通过上机实验、调试程序,加深对课本知识的理解,最终使学生能够熟练应用数据结构的知识写程序。(1)通过本课程的学习,能熟练掌握几种基本数据结构的基本操作。(2)能针对给定题目,选择相应的数据结构,分析并设计算法,进而给出问题的正确求解过程并编写代码实现。2、设计题目要求:问题描述:假设停在铁路调度站入口处的车厢序列的编号一次为1,2,3,……,n。设计一个程序,求出所有可能由此输出的
推荐度:
导读源代码::↓课程设计任务书及成绩评定课题名称车厢调度Ⅰ、题目的目的和要求:1、设计目的巩固和加深对数据结构的理解,通过上机实验、调试程序,加深对课本知识的理解,最终使学生能够熟练应用数据结构的知识写程序。(1)通过本课程的学习,能熟练掌握几种基本数据结构的基本操作。(2)能针对给定题目,选择相应的数据结构,分析并设计算法,进而给出问题的正确求解过程并编写代码实现。2、设计题目要求:问题描述:假设停在铁路调度站入口处的车厢序列的编号一次为1,2,3,……,n。设计一个程序,求出所有可能由此输出的
源代码::↓

课程设计任务书及成绩评定

课题名称       车厢调度

Ⅰ、题目的目的和要求: 

  1、设计目的

巩固和加深对数据结构的理解,通过上机实验、调试程序,加深对课本知识的理解,最终使学生能够熟练应用数据结构的知识写程序。

(1)通过本课程的学习,能熟练掌握几种基本数据结构的基本操作。

(2)能针对给定题目,选择相应的数据结构,分析并设计算法,进而给出问题的正确求解过程并编写代码实现。

2、设计题目要求: 

 问题描述:假设停在铁路调度站入口处的车厢序列的编号一次为 1,2,3,……,n。设计一个程序,求出所有可能由此输出的长度为n的车厢序列;

Ⅱ、设计进度及完成情况

日  期

内               容

1.10-1.11选取参考书,查阅有关文献资料,完成资料搜集和系统分析工作。
1.12~1.14创建相关数据结构,录入源程序。
1.17~1.19调试程序并记录调试中的问题,初步完成课程设计报告。
1.20~1.21上交课程设计报告打印版并进行课程设计答辩,要求每个同学针对自己的设计回答指导教师3-4个问题。
考核结束后将课程设计报告和源程序的电子版长统一刻光盘上交。
Ⅲ、主要参考文献及资料

[1] 严蔚敏 数据结构(C语言版)清华大学出版社 1999

[2] 严蔚敏 数据结构题集(C语言版)清华大学出版社 1999

[3] 谭浩强  C语言程序设计  清华大学出版社

[4] 与所用编程环境相配套的C语言或C++相关的资料

源代码

#include

#include

#include

#define STACK_INIT_SIZE 100

#define STACKINCREMENT 10

#define ERROR 0

#define OK 1

#define OVERFLOW -2

typedef int Status;

typedef struct{

 int *base; //栈底指针

 栈顶指针

 栈空间大小

}SqStack;

Status InitStack(SqStack &S)

{

 S.base=(int*)malloc(STACK_INIT_SIZE*sizeof(int));

 if(!S.base)exit(OVERFLOW);

 S.top=S.base;

 S.stacksize=STACK_INIT_SIZE;

 return OK;

}创栈

Status Push(SqStack &S,int e)

{

if((S.top-S.base)>=S.stacksize)

 {

  S.base=(int*)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(int));

  if(!S.base)exit(OVERFLOW);

  S.top=S.base+S.stacksize;

  S.stacksize+=STACKINCREMENT;

  }

 *S.top++=e;

 return OK;

}  //进栈

Status Pop(SqStack &S,int &e)

{

 if(S.top==S.base)return ERROR;

 e=*--S.top;

 return OK;

}  //出栈

Status StackEmpty(SqStack &S)

{

 if(S.top==S.base)

 return 1;

 else return 0;

}判断空栈

void print(int b[],int n)

{

 int k;

for(k=0;k printf("%d ",b[k]);

 printf("\\n");

}

void f(SqStack S,int a[],int b[],int p,int q,int n)

{

if(p{

 递归进栈

 f(S,a,b,p+1,q,n);

 Pop(S,b[q]);

}

 if(!StackEmpty(S))

 {

 递归出栈

  f(S,a,b,p,q+1,n);

  Push(S,b[q]);

  }

  if(q>=n&&StackEmpty(S))print(b,n); //出栈完输出序列号

 }

int main()

{ int i,n,a[STACK_INIT_SIZE],b[STACK_INIT_SIZE];

  printf("请输入待调车厢数:\\n");

  scanf("%d",&n);

  SqStack S;

  InitStack(S);

for(i=0;i  a[i]=i+1;

  printf("输出序列号为:\\n");

  f(S,a,b,0,0,n);

  return 0;

}

文档

源代码:车厢调度:数据结构课程设计

源代码::↓课程设计任务书及成绩评定课题名称车厢调度Ⅰ、题目的目的和要求:1、设计目的巩固和加深对数据结构的理解,通过上机实验、调试程序,加深对课本知识的理解,最终使学生能够熟练应用数据结构的知识写程序。(1)通过本课程的学习,能熟练掌握几种基本数据结构的基本操作。(2)能针对给定题目,选择相应的数据结构,分析并设计算法,进而给出问题的正确求解过程并编写代码实现。2、设计题目要求:问题描述:假设停在铁路调度站入口处的车厢序列的编号一次为1,2,3,……,n。设计一个程序,求出所有可能由此输出的
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top