【考试临时抱佛脚】系列文章针对于<学习时间少>、<时间紧迫>、<想短时间提升成绩>的考生打造。无论你是<自考>、<专升本>还是<考研>这个专栏都适合你,Let’s go!
一、方法
解题步骤
栈的特点地先进后出,想象成一个死胡同,或者一个桶
二、考察形式1
1、问题
设栈的初始状态为空,元素1,3,5,2,4依次入栈,不能得到的出栈序列是(A)
A. 5,1,3,2,4
B. 4,2,5,3,1
C. 2,4,5,3,1
D. 1,3,5,2,4
2、解析&回答
分析:
1) 与原来元素次序一致的(正序和倒序)都是可以得到出线序列的,所以排除B、D
2) 选项A: 第一个元素为5,所以必须 先进栈进到5才行【栈里元素为:1,3,5】,5出栈没有问题,然后马上1就出栈,这时【栈里元素为:1,3】,所以1不能越过3出栈,所以错误
3) 选项C: 2,4,5,3,1为正确,如下图所示
① 第一步:先出2,所以先入栈到2【栈里元素为:1,3,5,2】,然后出栈2,这时【栈里元素为:1,3,5】
② 第二步:再出栈4,4还未入栈,所以先入栈再出栈4,这时【栈里元素为:1,3,5】
③第三步:再依次出栈5,3,1
三、考察形式2
1、问题
设有初始为空的栈S,入栈序列是f,e,d,c,b,a,出栈序列是d,e,a,b,c,f,则需要为S分配的空间大小至少是(C)
A. 2
B. 3
C. 4
D. 5
2、解析&回答
分析:
四、考察形式3
1、问题
设栈初始为空,入栈序列为1,2,3,4,5,下列选项中,不可能得到的出栈序列是(B)
A. 1,2,3,4,5
B. 3,1,4,2,5
C. 4,3,2,5,1
D. 5,4,3,2,1
2、解析&回答
分析:
A. 1,2,3,4,5【正序,放一个取一个,肯定行】
B. 3,1,4,2,5
C. 4,3,2,5,1
D. 5,4,3,2,1【倒序:全部放进去,再逐一拿出来,肯定行】1) 与原来元素次序一致的(正序和倒序)都是可以得到出线序列的,所以排除A、D
2) 选项B,3出栈,那么先入栈1,2,3,然后3再出栈,紧接着1要出栈,这时1还隔着2呢,所以不能出栈,B错误
3) 选项C,4出栈,那么先入栈1,2,3,4,然后4,3,2出栈,然后5要出栈,需要5入栈后再出栈,最后1再出栈,C正确
答案:B