作业帮 > 综合 > 作业

一个栈的入栈序列是1,2,3,4,5,操作时随时进随时出,则栈的不可能输出序列是43512,说明原因

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/24 13:06:07
一个栈的入栈序列是1,2,3,4,5,操作时随时进随时出,则栈的不可能输出序列是43512,说明原因
因为出4之前必须出5……第一个必须是5
再问: 能详细叙述原因吗?谢了
再答: 看错题目了。操作时随时进随时出。。。 如果这样的话,要第一个是4,那么要求前面进去的1,2,3必须不能出来(否则第一个就不是4了),后面进了4,出来了,这个时候选择要想出3,1,2的顺序就不可能了(不用管5)。 判断的定理可以总结为:若大数先出栈,则比他小的且还没有出栈的数,出栈的顺序就必须严格从大到小排列。 定理证明就不用写了,其实你仔细思考下就能理解的。 根据这个定理,我们看到4出栈时,里面还有1,2,3,那么这3个数的出栈顺序必须是3,2,1。。。 或者从5看,若5出栈了,1,2,还没有出栈,那么1,2,的顺序必须是2,1,同样可以判断这个出栈顺序是不可能的。