国家开放大学《数据结构》课程实验报告(实验3——栈、队列、递归设计)参考答案.docxVIP

  • 244
  • 0
  • 约小于1千字
  • 约 1页
  • 2022-04-29 发布于海南
  • 举报

国家开放大学《数据结构》课程实验报告(实验3——栈、队列、递归设计)参考答案.docx

2022年-2023年最新 国家开放大学《数据结构》课程实验报告 (实验 3 栈、队列、递归设计) 学生姓名班 级实验名称 实验目的: 学 号 指导老师实验成绩 实验报告 编写一个算法,输出指定栈中的栈底元素,并使得原栈中的元素倒置。 实 验 实验要求: 概 (1)正确理解栈的先进后出的操作特点,建立初始栈,通过相关操作显示栈底元素。述 (2)程序中要体现出建栈过程和取出栈底元素后恢复栈的入栈过程,按堆栈的操作 规则打印结果栈中的元素。实验基本原理: 采用顺序栈,即用数组存储栈元素。 设定一个临时队列,用来存放从初始栈中出栈的元素。 取出栈底元素后,将队列中的元素逐一出队并压入初始栈中。程序代码: /*实验 2.1 栈和队列的基本操作*/ 实 #include stdio.h 验 #include stdlib.h 内 #define MaxSize 100 容 typedef int ElemType; typedef struct { ElemType data[MaxSize]; int top; /*栈顶指针*/ } SeqStack; /*定义顺序栈*/ typedef struct { ElemType data[MaxSize]; int front,rear; /*队头和队尾指针*/ } SeqQueue; /*定义顺序队列*/ void InitStack(SeqStack *s); /*初始化栈*/ int StackEmpty(SeqStack *s); /*判栈空*/ int StackFull(SeqStack *s); /*判栈满*/ void Push(SeqStack *s,ElemType x); /*进栈*/ ElemType Pop(SeqStack *s); /*出栈*/ ElemType GetTop(SeqStack *s); /*取栈顶元素*/ void DispStack(SeqStack *s); /*依次输出从栈顶到栈底的元素*/ void DispBottom(SeqStack *s); /*输出栈底元素*/ void InitQueue(SeqQueue *sq); /*初始化队列*/

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档