数据结构-堆栈-数组实现
来源:互联网 发布:正规网络兼职赚钱 编辑:程序博客网 时间:2024/05/20 07:17
什么是堆栈?
堆栈形如数组,是一种数据存储方式.
堆栈存数像弹夹装弹
子弹从头开始装,最先装进去的,最后出来.
堆栈也是同样道理,最先装入的内容,最后出来,就是所谓的先进后出.
/* * 堆 数组实现 * * */#include <stdio.h>#include <stdlib.h>#include <stdbool.h>//定义堆栈struct SNode { int *data; int top; int maxSize;};typedef struct SNode * Stack;//创建一个堆栈Stack CreakStack(int maxSize){ Stack s=(Stack)malloc(sizeof(struct SNode)); s->data=(int *)malloc(maxSize * sizeof(int)); s->maxSize=maxSize; s->top=-1; return s;}//判断是否已满bool isFull(Stack s){ return (s->top==s->maxSize-1);}//判断是否为空bool isEmpty(Stack s){ return (s->top==-1);}//压栈bool Push(Stack s,int num){ if(isFull(s)){ printf("堆栈满"); return false; } else{ s->data[++(s->top)]=num; return true; }}//出栈int Pop(Stack s){ if(isEmpty(s)){ printf("堆栈空"); return NULL; } else{ return (s->data[(s->top)--]); }}//测试int main(){ Stack stack=CreakStack(10); Pop(stack); for(int i=0;i<10;i++){ Push(stack,i); } Push(stack,11); for(int i=0;i<10;i++){ printf("%d ",Pop(stack)); }}
阅读全文
0 0
- 数据结构-堆栈-数组实现
- 用动态数组实现堆栈数据结构
- Java数据结构之堆栈-使用数组实现堆栈
- 巧用javascript数组实现数据结构-堆栈与队列
- 数据结构与算法之动态数组实现堆栈
- 巧用javascript数组实现数据结构-堆栈与队列
- 数据结构与算法-----堆栈-使用数组(顺序结构)实现
- 用数组实现js中的堆栈 或者队列数据结构
- 使用JavaScript的数组实现数据结构中的队列与堆栈
- 使用JavaScript的数组实现数据结构中的队列与堆栈
- 使用JavaScript的数组实现数据结构中的队列与堆栈
- 使用JavaScript的数组实现数据结构中的队列与堆栈
- PHP中使用数组实现堆栈数据结构的代码
- 堆栈数据结构的实现~
- 用链表实现堆栈数据结构
- 数据结构--堆栈的实现
- 《C++实现数据结构》:堆栈
- 考研数据结构与算法之堆栈的使用(三)数组实现的堆栈
- PTA 7-10(图) 旅游规划(25 分) 25分代码
- 页面之前跳转 和页面之间传递参数
- iOS NSMutableParagraphStyle
- python 手记3 〖笨方法学python习题18〗
- Bootstrap(2)
- 数据结构-堆栈-数组实现
- 拉格朗日对偶问题
- 集群-LVS-压力测试
- Angular Material Autocomplete 组件
- Java设计模式之单例模式(Singleton Pattern)
- Linux进程-1.进程概述
- 使用PHP:Filter函数(过滤器)获取参数并进行过滤
- Android小例子--实现微信界面
- Bootstrap(3)