1 / 15
文档名称:

数据结构栈和队列实验报告.docx

格式:docx   大小:111KB   页数:15页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构栈和队列实验报告.docx

上传人:shugezhang2 2022/8/1 文件大小:111 KB

下载得到文件列表

数据结构栈和队列实验报告.docx

相关文档

文档介绍

文档介绍:数据结构栈和队列实验报告
一、实验目的和要求
(1) 理解栈和队列的特征以及它们之间的差异,知道在何时使用那种数据结构。
(2) 重点掌握在顺序栈上和链栈上实现栈的基本运算算法,注意栈满和栈空的条件。
(3) 重点掌握在顺序队上main ()
(
ElemType e;
SqStack *s;
printf ("栈s的基本运算如下:\n");
运行结果如下:
推吊勺基声谆昱如下=
<2〉栈为宝
<3>傕次进栈兀素a,b尸c,d , e
:燃御赢…八丑
<6〉栈为空
《7〉释放栈 ^
Press mnjy* kejy to coni; in tie —
2)、编写一个程序algo3-,实现链栈的各种基本 运算,并在此基础上设计一个主程序并完成如下功 能:
初始化链栈S;
判断链栈S是否非空;
依次进栈a, b, c, d, e;
(1)
(2)
(3)
判断链栈s是
空;
输出链栈长度;
输出从栈底到
素;
(7)
(8)
组成
(9)
帽 Workspace 'ProjS ?1: 1 project[s|
3 窗 Proj3_2 tiles
勺• €5 一
固 algo3-
团 exp3-
C~] Header Files
口 Resource Files
1 Source Files
栈顶元
■; ClassView 亶 FileView
输出出队序列;
判断链栈S是否非空;
图33 Proj3_2工程
释放队列。
。。图中方框 表示函数,方框中指出函数名,箭头方向表示函数间的调用关系。
T — A T\ 6 ~ 4 ——I ■口 D. ■ D —
Proj3_2工程的程序结构图
其中包含如下函数:
InitStack(LiStack *&s) 〃初始化栈 s
DestroyStack(LiStack *&s) 〃销毁栈
StackEmpty(LiStack *s)〃判断栈是否为空
Push(LiStack *&s,ElemType e) 〃进栈
Pop(LiStack *&s,ElemTy pe &e)//出栈
GetTop(LiStack *s,Elenil^ pe &e) 〃取栈顶元素
对应的程序如下:
//文件名:algo3-2. cpp
ftinclude <stdio. h>
ttinclude <malloc. h>
ElemType data; //数据域 struct linknode *next; 〃指针域
) LiStack;
void InitStack (LiStack *&s) 〃初始 化栈S
( s=(LiStack
*)malloc(sizeof(LiStack)); s->next=NULL;
}
void DestroyStack(LiStack *&s) // 销 毁栈
( LiStack *p=s, *q=s-〉next;
while (q!=NULL)
{ free (p);
p=q;
q=p->next;
free (p); 〃此时p指向尾节点
)
bool StackEmpty(LiStack *s)// 判断栈 是否为空
//文件名:exp3-2. cpp ttinclude <stdio. h> ftinclude <malloc. h> typedef char ElemType; typedef struct linknode (
ElemType data; //数据域
struct linknode *next; //指针域
) LiStack;
extern void InitStack(LiStack *&s); extern void DestroyStack (LiStack *&s);
extern bool StackEmpty(LiStack *s); extern void Push(LiStack *&s, ElemType e);
extern bool Pop(LiStack *&s, ElemType &e);
extern bool GetTop (LiStack *s, ElemType &e);
void main ()
{
ElemTvoe e: 程序运行结果如下:
n
女s
算栈
运化空进非序空栈k 本碧次为栈为放ny 基瞿露出栈释-
-7 :
栈空列
e ■ ■ du-
>>>>>> .B 1234567 s <<<<