早教吧 育儿知识 作业答案 考试题库 百科 知识分享

数据结构有关栈的问题设有三个元素a,b,c依次进入一个栈表中,则不可能得到的出栈顺序序列是()A.cbaB.cabC.bacD.abc这是一道题目,答案不重要,重要的是为什么会选这个答案,

题目详情
数据结构有关栈的问题
设有三个元素a,b,c依次进入一个栈表中,则不可能得到的出栈顺序序列是()
A .cba B.cab C.bac D.abc
这是一道题目,答案不重要,重要的是为什么会选这个答案,
▼优质解答
答案和解析
首先要明白栈的特点是先进后出,也就是说出栈的顺序和进栈的顺序正好相反,第一个进,只能最后一个出.上面的题只是考你栈的这个特点.要说规律,即先看第一个出栈元素,判断它之前元素的进栈情况.比如A选项,先出的是C元素,说明它是最后一个进的,以因为题目要求a,b,c依次进入一个栈表中,说明,B和A元素都在栈内,A比B先进,所以A最后一个出,即CBA顺序可以
B选项:同样先出的是C,但看第二个出的是A元素,B在它之后才出栈,不符栈的先进后出原则,所以B选错.C选项,先出B元素,后出A元素,最后出的是C元素.题中只说abc是依次进入栈而不是同时三个一起进栈,所以ab先进栈,ba出栈,c进栈,出栈.顺序可以是bac.同样,对于D选项,a进栈,出栈.b进栈,出栈.c进栈,出栈.abc顺序也可以