请教两个超简单的数据结构题?

1,设将整数依次进栈,但只要出栈时栈非空,则可将出操作按任何次序夹入其中请回答下述问题:(1)若入出栈次序为push(1),pop(),push(2),push(3),p... 1,设将整数依次进栈,但只要出栈时栈非空,则可将出操作按任何次序夹入其中请回答下述问题:
(1)若入出栈次序为push(1),pop(),push(2),push(3),pop(),pop(),push(4),pop(),则出的数字充列为何种序列?(这里push(i)表示进栈,pop()表示出栈)

(2)能否得到出序列1423,并说明为什么不能得到或者如何得到?

对于学习过数据结构的高手都比较简单请写出解析上面两题的详细过程!
满意马上采纳绝不拖欠分数!
能否得到出序列1423和1432,并说明为什么不能得到或者如何得到?
展开
 我来答
娇娇的蓝水晶
2007-11-09
知道答主
回答量:20
采纳率:0%
帮助的人:19.1万
展开全部
(1) 1 3 2 4 按照后进先出的原则,1先进栈马上又出栈,第一个数为1,之后2,3先后进栈,出羡含数来是后进先老闹出,所以3出来后才是2,第二三个数为3,2,之后4先进栈后又出栈,第四个数是4,所以得到出栈序列为1 3 2
4
(2)是不能得到的。原因是上式只能得到1 3 2 4的序列。要想得到此序列,需要的操作是兄首:
push(1),pop(),push(2),push(4),pop(),pop(),push(3),pop()

push(4),push(1),pop(),pop(),push(2),pop(),push(3),pop()

push(3),push(2),push(4),push(1),pop(),pop(),pop(),pop()
等等可能还有其他的算法实现。你看对吗?
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
aryzhang1234
2007-11-09 · 超过92用户采纳过TA的回答
知道小有建树答主
回答量:449
采纳率:0%
帮助的人:0
展开全部
1. 1324,堆栈的特性就是先进后出裂卜圆。
2. 不能。想要1后面是4,那么必然是:
push(1), pop(),得出1
然后为了得到4,需要push(2),push(3),push(4),pop(4)
但此时堆栈中剩下的是2,3,出肆塌栈操作已无法得到23。

答案弊裂如有问题请高手指出。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式