本章共18个实验题目。
一、顺序栈的建立
1.定义顺序栈的存储结构
2.初始化顺序栈为空栈(InitStack_Sq)
3.输入要入栈的元素个数n
4.向顺序栈中压入n个元素(Push_Sq)
5.将顺序栈中的元素从栈顶到栈底依次输出(StackTraverse_Sq)
6.销毁顺序栈(DestroyStack_Sq)
例如:
5
4 3 5 10 9
9 10 5 3 4 //遍历输出时最后一个元素后有一个空格
程序:
#includeiostream
using namespace std;
typedef struct {
int *base;
int *top;
int stacksize;
}SqStack;
void InitStack_Sq(SqStack S)
{
S.base=new int[100];
S.top=S.base;
S.stacksize=100;
}
void Push_Sq(SqStack S,int e)
{
*S.top++=e;
}
void Pop(SqStack S,int e)
{
e=*--S.top;
}
void StackTraverse_Sq(SqStack S,int n)
{
int e;
int m=n;
while(m--)
{
Pop(S,e);
coute ;
}
}
void DestroyStack_Sq(SqStack S)
{
S.base=NULL;
S.top=S.base;
}
int main()
{
SqStack S;
InitStack_Sq(S);
int n,i;
int e;
cinn;
int a[n];
for(i=0;in;i++)
{
cina[i];
}
for(i=0;in;i++)
{
Push_Sq(S,a[i]);
}
StackTraverse_Sq(S,n);
}
二、顺序栈的入栈
1.定义顺序栈入栈函数(Push_Sq)
2.输入要入栈的元素个数n
3.向顺序栈中压入n个元素
4.将顺序栈中的元素从栈底到栈顶依次输出(StackTraverse_Sq)
5.销毁顺序栈(DestroyStack_Sq)
例如:
5
6 2 8 10 9
9 10 8 2 6 //遍历输出时最后一个元素后有一个空格
程序:
#include iostream
#include stdlib.h
using namespace std;
#define OK 1
#define ERROR 0
#define INFEASIBLE -1
#define OVERFLOW -2
typedef int Status;
typedef int SElemType;
#define MAXSIZE 100
typedef struct
{
SElemType *base;
SElemType *top;
int stacksize;
}SqStack;
Status InitStack_Sq(SqStack S)
{
S.base=new SElemType[MAXSIZE];
if(!S.base) exit(OVERFLOW);
S.top=S.base;
S.stacksize=MAXSIZE;
return OK;
}
void DestroyStack_Sq(SqStack S)
{
if(S.base) delete []S.base;
S.top=S.base=NULL;
}
//在此处定义入栈函数Push_Sq
void Push_Sq(SqStack S,SElemType e)
{
*S.top++=e;
}
void StackTraverse_Sq(SqStack S)
{
SElemType *p;
p=S.top;
while(p!=S.base)
{
cout*--p ;
}
coutendl;
}
int main()
{
SqStack S;
InitStack_Sq(S);
int n;
SElemType e;
cinn;
for(int i=1;i=n;i++)
{
cine;
Push_Sq(S,e);
//此处调用入栈函数
}
StackTraverse_Sq(S);
DestroyStack_Sq(S);
return
您可能关注的文档
- 人教版九年级物理内能-章末复习.pptx
- 计算机组成原理考试题型范围.docx
- 机组老师给的题.doc
- 计算机组成原理.docx
- 英语翻译和重点词汇.docx
- 大型数据库技术-样题(1).docx
- 大型数据库技术-样题(2)(2)(1).docx
- 机组的大题总结--找一下.doc
- 机组作业答案.docx
- 计算机组成原理考试样卷及答案解析.docx
- 2025年新外研版三年级上册英语同步教学课件.pptx
- 红十字会大讲堂管理制度.docx
- 技术奇点(Singularity)理论的科学基础、哲学思辨与未来社会构想 _2026年1月.docx
- 公共艺术项目在激活城市消极空间(如高架桥下、废弃铁轨)中的作用 _2026年1月.docx
- “双减”政策对校外培训行业转型及家庭教育投入变化的影响 _2026年1月.docx
- Z世代员工对职场“摸鱼文化”的态度成因与管理对策研究 _2026年1月.docx
- 跨文化团队管理中的沟通障碍、文化冲突与融合策略案例分析 _2026年1月.docx
- 共享经济平台将劳动者归类为“合作伙伴”的伦理与法律责任 _2026年1月.docx
- 大型国际展会(如进博会、CES)的绿色会展实践与可持续发展评估 _2026年1月.docx
- 地理标识产品(如阳澄湖大闸蟹)与产地旅游的融合发展研究 _2026年1月.docx
最近下载
- 2025年江苏省A股上市公司分析报告(附2025年末江苏省A股上市公司名单).docx
- 高中英语课程改革与教学实践研究论文.docx
- 刷拖鞋 (教案)一年级下册劳动人教版.pdf VIP
- (2026春新版)人美版美术三年级下册教学计划.pdf VIP
- 《2025年[陕西]事业单位招聘考试综合类职业能力倾向测验真题试卷及答案.docx VIP
- 梅毒的实验室诊断与临床意义课件.ppt VIP
- 2026 年九江卫生健康职业学院高职单招《职业技能》考试试卷.docx VIP
- 韶关市翁源县乡镇地图可编辑PPT行政区划边界高清(广东省).pptx VIP
- 九江卫生健康职业学院2026年高职单招《职业技能》考试模拟试卷.docx
- 2026年乌海职业技术学院单招职业倾向性测试题库附答案.docx VIP
原创力文档

文档评论(0)