1 / 4
文档名称:

链栈实验报告.docx

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

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

分享

预览

链栈实验报告.docx

上传人:秋江孤影 2021/2/11 文件大小:32 KB

下载得到文件列表

链栈实验报告.docx

文档介绍

文档介绍:数据结构实验报告
姓名: 方钢 学号:20105567 专业: 电子商务 班 级:10— 1班
指导教师: 实验时间: 实验地点:新区实验楼四楼
(实验题目)链栈实验报告
实验内容和要求

本次实验中,链栈使用带头结点的单链表实现。
链栈结构定义,算法实现全部放入库函数“ ”中;
各运算和变量命名直观易懂,并有相应的注释。

<1>初始化一个链栈。
<2>判断是否空栈。
<3>入栈
<4>取栈顶元素
<5>出栈
<6>将10进制数转换为16进制数
实验目的
掌握栈的基本概念。
掌握链栈的建立、入栈和出栈等方法。
根据具体问题的需要,设计出合理的表示数据的结构,并设计相 关算法。
数据结构设计

<1>初始化一个链栈。
<2>判断是否空栈。
<3>入栈
<4>取栈顶元素
<5>出栈
算法:
int main(int argc, char* argv[])
(
node* H, *L, *P,*q;
int y;
初始化
initialstack(L);//
if(stackEmpty(L))
cout<<" 空栈"<<endl;
else
cout<<" 栈不空"<<endl;
cout<<"尾插法创建带头结点的单链表>>"<<endl;
//以“9999”作为结束元素输入条件,用引用参数返回链表 pushstack( L );
H=L->next;//H 为头指针
cout<<"入栈元素顺序为:";
P=L->next;
while(P)
{
cout<<P->data<<",";
P=P->next;
}
cout<<endl;
popstack(H);
L->next=H;
cout<<"出栈后元素顺序为:";
P=H;
while(P)
{
cout<<P->data<<",";
P=P->next;
}
cout<<endl;
if(stacktop(H,q))
{
y=q->data;
cout<<"栈顶元素"<<y<<endl;
}
destroyList(L);
return 0;
}
截图:
尾插法创建带头结点的单链表〉 请输入元素数据(整数,9龄9退出): 10
13
5
3
23
55
9999
入栈元素顺序为:1413,5,8,2叽55,
出栈后元素顺序为:55,20,8,5,13,16, 栈顶元素55
Pre&s any key to continue^

算法:
int main(int argc, char* argv[])
(
node *p,*L,*H;
initialstack(L);
int M,x;
char a,b,c,d,e,f;
cout<<” 输入一个10进制数:”; cin>>M;
Tentosixteen(&M,L);
H=L->next;
cout<<" 入栈元素顺序为:";
p=L->n