- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
淮海工学院数据结构第2次实验
淮海工学院计算机科学系
实验报告书
课程名: 《数据结构》
题 目: 线性数据结构实验
(栈与对立队列及其应用)
班 级:
学 号: 2012122693
姓 名:
线性表算法实现与应用报告要求
1目的与要求:
1)掌握栈与队列的数据类型描述及特点;
2)掌握栈的顺序和链式存储存表示与基本算法的实现;
3)掌握队列的链式和循环存储表示与基本操作算法实现;
4) 掌握栈与队列在实际问题中的应用和基本编程技巧;
5)按照实验题目要求,独立完成实际程序的编写编写、调试和运行,并通过用例数的运行过程抓获相关屏面验证程序设计的正确性;
7)由于国庆节占用授课时间,所以本次实验将不做统一上机安排,要求同学们节日期间自行完成实验任务,并于第6周周4以前按时提交实验报告。
2 实验内容或题目
(一)必做题:
1、实现顺序栈的创建(初始化)、压入(插入)、弹出(删除)操作(数据元素类型自己选取,如整型、字符型等),并给出栈的每次操作变化状态;
2、实现链栈的创建(初始化)、压入(插入)、弹出(删除)操作(数据元素类型自己选取,如整型、字符型等),要求给出栈的操作变化过程;
3、实现循环队列的创建、进队、出队等基本操作(数据元素类型自己选取,如整型、字符型等),并实时给出队列的操作变化状态;
4、实现链式队列的创建、进队、出队等基本操作(数据元素类型自己选取,如整型、字符型等),并实时给出队列的操作变化状态;
(二)选做题(视自己能力而定,数量不限):任选一个或多个源程序(已经发给学委),并阅读、调试和运行程序,而后给出程序功能分析和实例运行演示;
1、实现表达式求值算法程序;
2、用递归算法实现汉诺塔问题算法程序;
3、使用循环队列实现打印杨辉三角形算法程序。
3 实验步骤与源程序
第一题:
#include stdio.h
#include stdlib.h
#define TRUE 1
#define FALSE 0
#define Size 50
typedef struct
{
int elem[Size];
int top;
}SeqStack;
void InitStack(SeqStack *S)
{
S-top =-1;
}
int IsEmpty(SeqStack *S)
{
return(S-top==-1?TRUE:FALSE);//判断栈空 为空是真 反之为假
}
int IsFull(SeqStack *S)
{
return(S-top==Size-1?TRUE:FALSE);//判断栈满 为满是真 反之为假
}
int Push(SeqStack *S,int x)//压栈
{
if(S-top==Size-1)
return(FALSE);
S-top++;
S-elem[S-top] = x;
return(TRUE);
}
int Pop(SeqStack *S,int *x)//弹出
{
if(S-top == -1)
return(FALSE);
else
{
*x = S-elem[S-top];
S-top--;
return(TRUE);
}
}
void main()
{
SeqStack S;
int x,y,i,l;
InitStack(S);
if(!IsFull(S))
printf(栈空:\n);
printf(输入要压入的元素个数(50以内):\n);
scanf(%d,l);
printf(输入要压入的元素:\n);
for(i=0;il;i++)
{
scanf(%d,y);
Push(S,y);
}
printf(弹出:\n);
while(!IsEmpty(S))
{
Pop(S,x);
printf(%d\n,x);
}
}
第二题:
#define TRUE 1
#define FALSE 0
#include stdio.h
#include stdlib.h
typedef struct node
{
int data;
struct node *next;
}LinkStackNode;
typedef LinkStackNode *LinkStack;
int IsEmpty(LinkStack S)
{
return NULL==S-nex
您可能关注的文档
- 英语作文必用句式.docx
- 四级作文高级表达.docx
- 环氧乙烷SDS.docx
- 化学英文命名.doc
- 停车场数据结构实验报告附代码.doc
- 数据结构实验四队列的实现.doc
- 英美文学模拟题含答案.docx
- 迷宫最最短路径.doc
- 多路高速串口的通信方法设计.doc
- 华师网络学院英语国家概况2.doc
- 25上半年2期套题班-行政职业能力测验(八).docx
- 公考讲义-2025年1月时政汇总.pdf
- 2025年省考逻辑填空1000 高频实词积累+刷题早读课 讲义.pdf
- 25上半年2期套题班-行政职业能力测验(九).docx
- 2025四川事业编FB综合岗考试-综合能力测试讲义-主观题基础,案例分析题,公文写作及文章写作题.pdf
- 25上半年2期套题班-行政职业能力测验(五).docx
- 2025申论多省联考刷题课真题资料-2025国考执法课程.doc
- 2025申论多省联考刷题课真题资料-2024江西执法课程.doc
- 25上半年2期套题班-行政职业能力测验(十).docx
- 2025申论多省联考刷题课真题资料-2024福建县乡课程.doc
最近下载
- UI设计创意表达与实践(肖文婷)配套课件教学课件1-1 初始UI设计.ppt VIP
- 小学数学解题研究.pptx VIP
- 《直播时代电商主播的有声语言存在的问题及完善对策研究》10000字.docx
- 生物化学biochemistry-教学.ppt
- 高中语文 选择性必修中册《第四单元 丰富的心灵》教学设计.docx
- 2025年青岛港湾职业技术学院高职单招数学历年(2016-2024)频考点试题含答案解析.docx
- 主体分部工程验收记录.docx VIP
- 河南科学技术出版社小学信息技术四年级下册教案(2021新版).docx
- 湖南文艺出版社六年级下册音乐教案.pdf
- 校长2024年度民主生活会个人对照检视发言材料.docx VIP
文档评论(0)