栈和列队
Posted wy9264
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了栈和列队相关的知识,希望对你有一定的参考价值。
栈(Stack)是一种重要的线性结构,是后进先出(Last in first out,LIFO)的数据结构。它要求只在表尾进行删除和插入操作。
表尾称为栈的栈顶(top),相应的表头称为栈底(bottom)。
typedef struct { ElemType *base;//栈底 ElemType *top; int stacksize;//最大容量 }sqStack;
#define STACK_INIT_SIZE 100 initStack(sqStack *s) { s->base = (ElemType *)malloc(STACK__INIT_SIZE*sizeof(ElemType)); if( !s->base) exit(0); s->top = s->base;//最开始,栈顶就是栈底 s->stackSize = STACK_INIT_SIZE; }
出栈操作 Pop(sqStack *s, ElemType *e) { if( s->top == s->base ) return; *e = *--(s->top) }
以上是关于栈和列队的主要内容,如果未能解决你的问题,请参考以下文章