点击上方“蓝字”关注我们
例题:一个栈的初始状态为空。将元素abcde依次入栈,不可能的出栈顺序()
A.edcba
B.dcbae
C.badce
D.cbaed
E.eabcd
答案:E
解析:abcde的进栈顺序并不是一次性的按照abcde入栈,也可能是先入栈一部分再出栈一部分在进行入栈(这个题好坑)
看完以上的题目,是不是有点懵;下面,跟着考无忧小编一起区分一下栈和队列的进出顺序吧~
一、栈及其基本运算
1、基本概念:
栈是限定在一端进行插入与删除运算的线性表,是属于一种特殊的线性表。
其插入运算与删除运算都只在线性表的一端进行,即栈是按照“先进后出”或“后进先出”的原则组织数据的。
栈顶:允许插入与删除的一端。
栈底:不允许插入与删除栈顶的另一端。
空栈:栈中没有元素的栈。
2、特点:
(1)栈顶元素是最后被插入和最早被删除的元素。
(2)栈底元素是最早被插入和最后被删除的元素。
(3)栈有记忆作用。
3、栈的基本运算:
(1)插入元素称为入栈运算;
(2)删除元素称为退栈运算;
(3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。
注:栈的存储方式和线性表类似,也有两种,即顺序栈和链式栈;
在顺序存储结构下&