首页 > 试题广场 >

已知一个栈的入栈序列是m,n ,x,y,z,则不可能出现的出

[单选题]
已知一个栈的入栈序列是m,n ,x,y,z,则不可能出现的出栈顺序是?
  • mnxyz
  • xnyzm
  • nymxz
  • nmyzx
推荐
答案是C,栈是先入后出,只有一端进行出入操作的数据结构,答案C中,在n出栈时,m必在栈中,y出栈时,x必在栈中,且x一定比m先出栈,故答案C的顺序不可能出现。
编辑于 2017-05-23 15:06:09 回复(0)
答案是C。原题序列为m,n,x,y,z, (我自认它是从小到大排列)
出栈元素后面的元素满足以下两个条件:
1.原序列中比它小的,按逆序排列。
2.原序列中比它大的,无顺序要求。
A选项:m后无比m小的元素,n后也是,x,y,z同样,所以A选项可以
B选项:x后比它小的元素有m和n,所以排序按逆序排列,所以是nm,yz比x大,所以无顺序要求;n和y和z后面比它小的只有m,B选项可以
C选项:n后比它小的只有m,y后比它小的有m,x;所以按逆序排列,应该是xm,所以C选项不可以。
D选项:n后只有m,m无,y后只有x,z后只有x,D选项可以

发表于 2021-05-25 09:12:06 回复(0)
一个一个排除法:c答案是:m,n进,n出栈,m在栈中,x,y进,y出栈,x在栈中,此时栈中,m是栈底,x是栈顶,所以出栈应该是先x后m,这与答案不符,所以错误。
发表于 2018-07-28 18:00:24 回复(0)
A:进出进出进出进出进出
B:进进进出出进出进出出
D:进进出出进进进出出出
发表于 2018-04-09 21:36:23 回复(0)
C.mn进栈,n出栈,m在栈中,随后只能是x先进栈或者是xy进栈,假设是x进栈,出栈,m出栈,出栈顺序为nxm,假设是xy进栈,y出栈,x出栈,m出栈,出栈顺序为nyxm,没有能匹配选项给出的出栈顺序。
编辑于 2017-09-29 23:42:03 回复(0)