第5周实践项目1 顺序栈建立的算法库
来源:互联网 发布:淘宝宝贝展现词为0 编辑:程序博客网 时间:2024/06/05 20:04
main.cpp#include <stdio.h>#include "Sqstack.h"int main(){ Elemtype e; SqStack *s; printf("(1)初始化栈s\n"); InitStack(s); printf("(2)栈为%s\n",(StackEmpty(s)?"空":"非空")); printf("(3)依次进栈元素a,b,c,d,e\n"); Push(s,'a'); Push(s,'b'); Push(s,'c'); Push(s,'d'); Push(s,'e'); printf("(4)栈为%s\n",(StackEmpty(s)?"空":"非空")); printf("(5)栈长度:%d\n",StackLength(s)); printf("(6)从栈顶到栈底元素:");DispStack(s); printf("(7)出栈序列:"); while (!StackEmpty(s)) { Pop(s,e); printf("%c ",e); } printf("\n"); printf("(8)栈为%s\n",(StackEmpty(s)?"空":"非空")); printf("(9)释放栈\n"); DestroyStack(s); return 0;}sqstack.h#include <stdio.h>#define MaxSize 100typedef char Elemtype;typedef struct{ Elemtype date[MaxSize]; int top;}SqStack;void InitStack(SqStack *&s);void DestroyStack(SqStack *&s); //销毁栈bool StackEmpty(SqStack *s); //栈是否为空int StackLength(SqStack *s); //返回栈中元素个数——栈长度bool Push(SqStack *&s,Elemtype e); //入栈bool Pop(SqStack *&s,Elemtype &e); //出栈bool GetTop(SqStack *s,Elemtype &e); //取栈顶数据元素void DispStack(SqStack *s); //输出栈sqstack.h#include <stdio.h>#include <malloc.h>#include "sqstack.h"void InitStack(SqStack *&s){ s=(SqStack *)malloc(sizeof(SqStack)); s->top=-1;}void DestroyStack(SqStack *&s){ free(s);}int StackLength(SqStack *s){ return s->top+1;}bool StackEmpty(SqStack *s){ return s->top==-1;//在这儿s->top 用==判断不能用=}bool Push(SqStack *&s,Elemtype e){ if(s->top==MaxSize-1) return false; //s->top++; s->date[++s->top]=e; return true;}bool Pop(SqStack *&s,Elemtype &e){ if(s->top==-1) return false; e=s->date[s->top--]; //s->top--; return true;}bool GetTop(SqStack *s,Elemtype &e){ if(s->top==-1) return false; e=s->date[s->top]; return true;}void DispStack(SqStack *s){ int i; for(i=s->top;i>-1;--i) printf("%c",s->date[i]); printf("\n");}
阅读全文
0 0
- 第5周实践项目1 顺序栈建立的算法库
- 第8周实践项目1-建立顺序串的算法库
- 第5周 项目1--建立顺序栈算法库
- 第5周 项目1-建立顺序栈算法库
- 第5周项目1 -建立顺序栈算法库
- 第5周项目1-建立顺序栈算法库
- 第5周项目1-建立顺序栈算法库
- 【第5周 项目1-建立顺序栈算法库】
- 第5周项目1-建立顺序栈算法库
- 第5周项目1-建立顺序栈算法库
- 第5周项目1 建立顺序栈算法库
- 第5周项目1-建立顺序栈算法库
- 第5周项目1 建立顺序栈算法库
- 第5周 项目1 - 建立顺序栈算法库
- 第5周项目1-建立顺序栈算法库
- 第5周项目1- 建立顺序栈算法库
- 第5周项目1 建立顺序栈算法库
- 第六周实践项目1-建立顺序栈算法库
- 51Nod-1264-线段相交-【数学】
- 第五周周四总结
- 关系数据库SQL语言
- SSM整合+demo
- OEM12C添加对MYSQL的监控
- 第5周实践项目1 顺序栈建立的算法库
- Python 官方标准常用库
- luogu2639 [USACO09OCT]Bessie的体重问题Bessie's Weight
- don_w0618
- 深度学习slam算法工程师
- Python str 和 repr 的区别
- (CodeForces
- C语言求解阿姆斯特朗数
- 1.9 c++_逻辑运算符