一、栈
1、栈 是仅在表尾进行插入、删除操作的线性表。表尾(即 an 端)称为栈顶 /top ; 表头(即 a1 端)称为栈底/base
例如: 栈 S= (a1 , a2 , a3 , ……….,an-1 , an ),a1称为栈底元素,an称为栈顶元素
插入元素到栈顶的操作,称为入栈。从栈顶删除最后一个元素的操作,称为出栈。
插入和删除都只能在表的一端(栈顶)进行!
2、堆栈是一种特殊的线性表,它只能在表的一端(即栈顶)进行插入和删除运算。
“进”=插入=压入=PUSH(an+1) ; “出”=删除=弹出=POP(an)
栈不存在的条件: base=NULL;
栈为空 的条件 : base=top;
栈满的条件 : top-base=stacksize;
若入栈动作使地址向高端增长,称为“向上生成”的栈;
若入栈动作使地址向低端增长