【数据结构】顺序栈
来源:互联网 发布:保益读屏软件下载 编辑:程序博客网 时间:2024/06/05 11:18
#include <STDIO.H>#include <STRING.H>#include <STDLIB.H>typedef struct SeqStack{int length;int top;char *data;}seqstack;seqstack* CreatStack(seqstack *s,int n){s=(seqstack *)malloc(sizeof(seqstack)+n*sizeof(char));if(s==NULL) return NULL;memset(s,0,sizeof(seqstack)+n*sizeof(char));s->length=n;s->top=0;s->data=(char *)(s+1);return s;}int StackEmpty(seqstack *s){if(s->top==0)return 1;else return 0;}int GetTop(seqstack *s,char *e){if(s->top==0)return -1;*e=s->data[(s->top)-1];return 0;}int PushStack(seqstack *s,char e){if(s->top==s->length)return -1;s->data[s->top]=e;s->top+=1;return 0;}int PopStack(seqstack *s,char *e){*e=s->data[s->top-1];s->top-=1;return 0;}int StackLength(seqstack *s){return s->top;}void InitStack(seqstack *s){s->top=0;}void destroyStack(seqstack *s){free(s);}int main(){seqstack *s=NULL;int i;char e=65;s=CreatStack(s,10);printf("%d\n",StackEmpty(s));for(i=0;i<s->length;i++){PushStack(s,65+i);GetTop(s,&e);printf("%c,",e);}printf("\n");printf("%d\n",StackEmpty(s));for(i=0;i<s->length;i++){PopStack(s,&e);printf("%c,",e);}printf("\n");printf("%d\n",StackEmpty(s));destroyStack(s);return 0;}
0 0
- 数据结构(栈):顺序栈
- 数据结构之顺序栈
- 数据结构 顺序栈
- 数据结构,栈,顺序表示
- 【数据结构】顺序栈 Stack
- 数据结构《顺序栈》
- 数据结构----顺序栈
- 数据结构之顺序栈
- 数据结构-顺序栈
- 【数据结构】顺序栈_Stack
- 数据结构之顺序栈
- 【数据结构】·【顺序栈】
- 数据结构_顺序栈
- 数据结构之顺序栈
- 数据结构之顺序栈
- 数据结构之顺序栈
- 数据结构之顺序栈
- 数据结构之顺序栈
- Ubuntu 12.04(32位)安装Oracle 11g(32位)全过程以及几乎所有问题的解决办法
- js中通过Object.prototype.toString方法----精确判断对象的类型
- 收到从svn上荡下来有冲突的项目的处理方法
- POJ 1328 Radar Installation
- webservice(java自带的demo)
- 【数据结构】顺序栈
- HTML转义字符大全
- VxWorks6.6开发共享库指南要点
- 二维卷积c代码
- Magento获取当前店铺信息(首页,类别,地址等)
- 【译】如何使用Android MediaStore裁剪大图片
- 【数据结构】链式栈
- Cocos2d-x 3.x中43种常用动作汇总
- Magento Block获取各种URL的方法