1 / 8
文档名称:

数据结构实验三.doc

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

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

分享

预览

数据结构实验三.doc

上传人:ipod0b 2017/9/8 文件大小:55 KB

下载得到文件列表

数据结构实验三.doc

相关文档

文档介绍

文档介绍:学院: 专业: 班级:
姓名
学号
实验组
实验时间
指导教师
成绩
实验项目名称
栈的实现
实验目的


实验环境
运行Visual c++的微机一台
实验内容
、入栈、出栈、显示、判空操作。
、入栈、出栈、显示、判空操作。
,调试上述算法。
实验数据
实验总结
在编写栈的顺序存储的代码时,我觉得我对各个算法不太熟悉,编译时会出现一些错误。我觉得我要更加的去熟悉各个算法的思想以及编写思路。在写主函数时,有时候考虑的不够全面,导致运行的时候会出现错误,经过修改,可以运行成功,但是我觉得不是很完善,还需改进。
在编写栈的连式存储的代码时,各个算法的编写比较顺利,最先我没有编写显示栈中元素的算法,而是用while循环在主函数中实现,最终没能达到预想的效果,经过检查,发现这种想法是错误的,没有想到顾虑大局,后来经过修改添加了一个算法来发挥显示的功能,最后成功运行。
指导教师意见
签名: 年月日
注:请在实验报告后附程序清单
顺序存储代码
#include <>
#include <>
#include <>
typedef int ElemType;
struct Stack
{
ElemType *st;
int maxsize;
int top;
};
//初始化栈为空
void Initstack(Stack &s)
{
=10;
=new ElemType[];
if(!)
{ printf("分配失败\n");
exit(1);
}
=-1;
};
//入栈操作
void pushstack(Stack &s,ElemType item)
{
if( == -1)
{ =(ElemType*)realloc(,(+5)*sizeof(ElemType));
= +5;
}
= +1;
[ ]=item;
};
//出栈操作
bool popstack(Stack &s)
{
if( ==-1)
{ cout<<"栈为空"<<endl;
return false;
}
--;
return true;
};
//取栈顶元素操作
bool peekstack(Stack s,ElemType &item)
{
if( ==-1)
{ printf("栈为空\n");
return false;
}
item=[ ];
return true;
};
//显示栈中的元素
void displaystack(Stack s)
{
int i;
cout<<"显