若元素a、b、c、d、e、f依次进栈,允许进栈、出栈操作交替进行。但不允许连续三次进行出栈工作,则不可能得到的出栈序列是(38)。

admin2021-01-13  39

问题 若元素a、b、c、d、e、f依次进栈,允许进栈、出栈操作交替进行。但不允许连续三次进行出栈工作,则不可能得到的出栈序列是(38)。

选项 A、dcebfa
B、cbdaef
C、bcaefd
D、afedcb

答案D

解析 本题考查数据结构基础知识。对于选项A的出栈序列dcebfa,其操作序列为:
    push(a入)、push(b入)、push(c入)、push(d入)、pop(d出)、pop(c出)、push(e入)、pop(e出)、pop(b出)、push(f入)、pop(f出)、pop(a出)。
    对于选项B的出栈序列cbdaef,其操作序列为:push(a入)、push(b入)、push(c入)、pop(c出)、pop(b出)、push(d入)、pop(d出)、pop(a出)、push(e入)、pop(e出)、push(f入)、pop(f出)。
    对于选项C的出栈序列bcaefd,其操作序列为:push(a入)、push(b入)、pop(b出)、push(c入)、pop(c出)、pop(a出)、push(d入)、push(e入)、pop(e出)、push(f入)、pop(f出)、pop(d出)。
    对于选项D的出栈序列afedcb,其操作序列为:push(a入)、pop(a出)、push(b入)、push(c入)、push(d入)、push(e入)、push(f入)、pop(f出)、pop(e出)、pop(d出)、pop(c出)、pop(b出),存在连续5次的出栈操作,违背题中所述的运算要求。
转载请注明原文地址:https://kaotiyun.com/show/PzNZ777K
0

最新回复(0)