3.1栈

来源:互联网 发布:淘宝网注册帐号银行卡 编辑:程序博客网 时间:2024/06/06 12:34
栈(stack)又称堆栈,是限制在表的一端进行插入和删除运算的线性表。通常称能够进行插入、删除运算的这一端为栈顶(Top),另一端为栈底(Bottom).表中没有元素是为空栈。
删除---退栈---弹出(Pop),删除的总是最新的元素(栈顶元素)
插入---进栈---压入(Push),压入的总是最新的元素。

栈满时,进栈称为“上溢”
栈空时,退栈称为“下溢”

堆栈的存储结构:顺序存储结构和链式存储结构
顺序存储结构考虑上溢
链式存储结构考虑下溢

栈的运算原则:后进先出,简称LIFO(last in first out)
顺序栈:array-based stack
链式栈:linked stack

栈的基本运算:
InitStack(s) 构造一个空栈S。
StackEmpty(S)判栈空
StackFull(S)判栈满
push(S,x)进栈
pop(S)退栈
StackTop(S)取堆栈的栈顶元素