社区
C语言
帖子详情
这个栈最小应该多大?
nastik
2015-12-20 01:02:29
若元素a,b,c,d,e,f依次进栈,允许进栈推展交替进行,但不允许连续3次进行退栈工作。问: 能否得到出栈序列d,b,c,a,e,f?
答案是可以。
我觉得不可能啊,因为
a,b,c,d
pop d
a,b,c
怎么可能第二个出栈的是b呢?
...全文
212
8
打赏
收藏
这个栈最小应该多大?
若元素a,b,c,d,e,f依次进栈,允许进栈推展交替进行,但不允许连续3次进行退栈工作。问: 能否得到出栈序列d,b,c,a,e,f? 答案是可以。 我觉得不可能啊,因为 a,b,c,d pop d a,b,c 怎么可能第二个出栈的是b呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lm_whales
2015-12-26
打赏
举报
回复
第一个序列为初始序列
a,b,c,d,e,f
下面进行第一轮入栈出栈操作
操作 栈状态 出栈序列 开始 栈空 a 入栈 栈内 a b 入栈 栈内 b,a c入栈 栈内 c,b,a c 出栈 栈内 b,a c d入栈 栈内 d,b,a c d出栈 栈内 b,a c,d b出栈 栈内 a c,d,b e入栈 栈内 e,a c,d,b e出栈 栈内 a c,d,b,e a出栈 栈内 a c,d,b,e,a f入栈 栈内 f f出栈 栈空 c,d,b,e,a,f
结束第一轮入栈出栈 于是生成第二个序列:
c,d,b,e,a,f,
再次 入栈出栈 就可以生成第三个序列了
d,b,c,a,e,f
操作终止
nastik
2015-12-25
打赏
举报
回复
引用 6 楼 lm_whales 的回复:
你说的"第一轮全部出栈后,得到第二个序列c,d,b,e,a,f,"是什么含义? 没有看懂。
lm_whales
2015-12-22
打赏
举报
回复
1楼告诉你,如果仅仅是一次入栈出栈,那是不可能的 但是我们可以多来几次,谁说 栈只能用一次啊 又不是一次性输液管 题目的意思是入栈次序不可变,但是出栈只是可以出入交替,可以连续两次出栈。 原始序列是a,b,c,d,e,f 第一轮全部出栈后,得到第二个序列c,d,b,e,a,f, 可以第二轮入栈出栈,此时可以得到第三个序列d,b,c,a,e,f 实际上只进行了两轮,第三轮还没开始呢
lm_whales
2015-12-21
打赏
举报
回复
做一个栈 测试一下就可以了 枚举所有可能性吧 1楼的方法应该是可行的,因为不允许3次出栈,但允许两次连续出栈。
fly_dragon_fly
2015-12-21
打赏
举报
回复
我也觉得不可能, d后面要么是c,要么是e
nastik
2015-12-21
打赏
举报
回复
引用 4 楼 lm_whales 的回复:
做一个栈 测试一下就可以了 枚举所有可能性吧 1楼的方法应该是可行的,因为不允许3次出栈,但允许两次连续出栈。
是啊,我也觉得d后面要么是c要么是e 怎么可能是b呢? 没有看懂1L的解
nastik
2015-12-20
打赏
举报
回复
谢谢,你说的第一轮,第二轮,等等,是什么含义呢,不太懂。 从第一轮如何得到第二轮的c,d,b,e,a,f? 谢谢。
linzertling
2015-12-20
打赏
举报
回复
可以啊,总共执行三轮即可,第一轮是a,b,c,d,e,f,第二轮是c,d,b,e,a,f,第三轮即可到达d,b,c,a,e,f,并且满足题中所给条件
如何确定嵌入式软件所需
最小
的
栈
空间大小
可抢占的中断让这个问题变得更加复杂如何设置
栈
的大小没有中断驱动的情况,且很容易找到最大深度的函数有中断驱动的情况,且很难找到最大深度的函数一有中断驱动的情况,且很难找到最大深度的函数二
栈
的原理 如上...
Python算法——用O(1)的时间复杂度求
栈
中
最小
元素
由于
栈
具有后进先出(Last In First Out, LIFO)的特点,因此 push 和 pop 只需要对
栈
顶元素进行操作,只能访问到
栈
顶元素,而无法得到
栈
中
最小
的元素。那么,如何求
栈
中
最小
元素呢? 解析: 1.利用一个变量记录...
软考-已得出
栈
序列,求
栈
的
最小
容量。
设元素序列a,b,c,d,e,f经过初始为空的
栈
S后,得到出
栈
序列cedfba,则
栈
S的
最小
容量为()。
栈
: ③ c 出
栈
(得到出
栈
序列第一个元素c) ② b 进
栈
① a 进
栈
栈
: ④ e 出
栈
(得到出
栈
序列第二个元素e...
定义
栈
的数据结构并得到
最小
元素
题目描述:定义
栈
的数据结构,请在该类型中实现一个能够得到
栈
的
最小
元素的 min 函数在该
栈
中,调用 min、push 及 pop 的时间复杂度都是 O(1)
栈
的数据结构都是很简单的,此题的主要难点就是如何在时间复杂度为O(1)...
找到
栈
最小
元素
题意描述:定义
栈
的数据结构,请在该类型中实现一个能够找到
栈
最小
元素的min函数。在该
栈
调用min、push、pop的时间复杂度都是O(1) 解题思路:引用数据
栈
和辅助
栈
解题, 入
栈
:数据
栈
中直接压入元素,当辅助
栈
空...
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章