先模拟出进栈、...
方法一:模拟
先模拟出进栈、退栈操作序列,然后检查是否出现连续三次进行退栈操作,题目明确要求“不允许连续三次进行退栈操作”。
A选项:a进栈,b进栈,c进栈,d进栈,d出栈,c出栈,e进栈,e出栈,b出栈,f进栈,f出栈,a出栈。没有出现连续三次进行出栈操作,正确。
B选项:a进栈,b进栈,c进栈,c出栈,b出栈,d进栈,d出栈,a出栈,e进栈,e出栈,f进栈,f出栈。没有出现连续三次进行出栈操作,正确。
C选项:a进栈,b进栈,b进栈,c进栈,c出栈,a出栈,d进栈,e进栈,e出栈,f进栈,f出栈,d出栈。没有出现连续三次进行出栈操作,正确。
D选项:a进栈,a出栈,b进栈,c进栈,d进栈,e进栈,f进栈,f出栈,e出栈,d出栈,c出栈,b出栈。出现连续五次出栈操作,错误。
本题选D。
方法二:观察选项
栈的性质为先进后出,序列a, b, c, d, e, f反转为序列f, e, d, c, b, a,如果出现连续三次进行出栈操作,则一定出现长度大于或等于 3 的f, e, d, c, b, a的子序列,D选项出现了f, e, d, c, b,长度大于 3。
本题选D。
登录后提交答案
暂无评论,来抢沙发