数据结构题,已知入栈顺序1,2,3,4,出栈顺序不就是4,3,2,1吗?答:(4)最后是4进去,再立即出来,所以第四个数就是4 顺序的话就是push(1),push(2),pop(2),pop(1),push(3),pop(3),push(4),pop(4)其他的出栈结果也是这样的,只要满足是先进后出这个规则就行。
如果进栈序列为1、2、3、4,则可能的出栈序列是()答:④ 3进栈,此时栈里元素为3,1 ⑤ 4进栈,此时栈里元素为4,3,1 ⑥ 4出栈,此时出栈为2,4,此时栈里元素为3,1 ⑦ 3出栈,此时出栈为2,4,3,此时栈里元素为1 ⑧ 1出栈,此时出栈为2,4,3,1,此时栈里元素为空 其他几个选项均无法满足栈的“先进后出”的顺序。有问题请追问!祝楼主...
若已知一个栈的进栈序列是p1 p2 p3...pn,其输出序列为1 2 3... n...答:只有1,2,3这三个数。进栈顺序不知,出栈顺序是1,2,3 现在只是知道了1是最后入栈的。那么进栈顺序,有二种可能 2, 3 ,1 3, 2 ,1 2,3,1要使最后的输出序列是1,2,3,则其出进出栈顺序是 2进,3进,1进,1出, 此时,要让2出来,必须3先出。所以这种情况是不可能存在的。所以p1...