欢迎来到天天文库
浏览记录
ID:20900903
大小:197.00 KB
页数:10页
时间:2018-10-17
《栈及对立队列及其应用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、淮海工学院计算机科学系实验报告书课程名:《数据结构》题目:线性数据结构实验(栈与对立队列及其应用)班级:学号:姓名:评语:成绩:指导教师:批阅时间:年月日《数据结构》实验报告-9-线性表算法实现与应用报告要求1目的与要求:1)掌握栈与队列的数据类型描述及特点;2)掌握栈的顺序和链式存储存表示与基本算法的实现;3)掌握队列的链式和循环存储表示与基本操作算法实现;4)掌握栈与队列在实际问题中的应用和基本编程技巧;5)按照实验题目要求,独立完成实际程序的编写编写、调试和运行,并通过用例数的运行过程抓获相关屏面验证程序设计的正确性;7)由于国庆节占用授课时间,所以本次实验将不
2、做统一上机安排,要求同学们节日期间自行完成实验任务,并于第6周周4以前按时提交实验报告。2实验内容或题目(一)必做题:1、实现顺序栈的创建(初始化)、压入(插入)、弹出(删除)操作(数据元素类型自己选取,如整型、字符型等),并给出栈的每次操作变化状态;2、实现链栈的创建(初始化)、压入(插入)、弹出(删除)操作(数据元素类型自己选取,如整型、字符型等),要求给出栈的操作变化过程;3、实现循环队列的创建、进队、出队等基本操作(数据元素类型自己选取,如整型、字符型等),并实时给出队列的操作变化状态;4、实现链式队列的创建、进队、出队等基本操作(数据元素类型自己选取,如整型
3、、字符型等),并实时给出队列的操作变化状态;(二)选做题(视自己能力而定,数量不限):任选一个或多个源程序(已经发给学委),并阅读、调试和运行程序,而后给出程序功能分析和实例运行演示;1、实现表达式求值算法程序;2、用递归算法实现汉诺塔问题算法程序;3、使用循环队列实现打印杨辉三角形算法程序。3实验步骤与源程序(一)、1:#include"stdio.h"#include"stdlib.h"#include"malloc.h"#defineTURE1#defineFALSE0#defineStack_Size25typedefintStackElementType;t
4、ypedefstruct{StackElementTypeelem[Stack_Size];inttop;《数据结构》实验报告-9-}SeqStack;voidInitStack(SeqStackS){S->top=-1;}intPush(SeqStackS,StackElementTypex){if(S->top==Stack_Size-1)return(FALSE);S->top++;S->elem[S->top]=x;return(TURE);}intPop(SeqStackS,StackElementTypex){if(S->top==-1)return(FA
5、LSE);else{x=S->elem[S->top];S->top--;return(TURE);}}voidmain(){SeqStackS;intr,t;inti;S=(SeqStack)malloc(sizeof(SeqStack));printf("请输入栈的长度:");scanf("%d",&r);S->top=r-1;printf("请输入栈中的个元素值:");for(i=0;i<=S->top;i++)scanf("%d",&S->elem[i]);printf("请输入要插入的元素值:");scanf("%d",&t);Push(S,t)
6、;printf("插入后的栈:");for(i=0;i<=S->top;i++)printf("%d",S->elem[i]);Pop(S,t);printf("删除后的栈:");for(i=0;i<=S->top;i++)printf("%d",S->elem[i]);printf("");《数据结构》实验报告-9-}(一)、2:#include"stdio.h"#include"stdlib.h"#include"malloc.h"#defineTRUE1#defineFALSE0typedefintStackElementType;typed
7、efstructnode{StackElementTypedata;structnodenext;}LinkStackNode;typedefLinkStackNodeLinkStack;voidinit_list(LinkStackNodel)/栈初始化/{l=(LinkStackNode)malloc(sizeof(node));l->next=NULL;}intPush(LinkStacktop,StackElementTypex)/进栈/{LinkStackNodetemp;temp=((LinkStackNode)malloc(sizeof
此文档下载收益归作者所有