由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 这个用stack实现queue
相关主题
一道面试题一道很难的面试题
请教一个系统设计问题 (转载)Two programming questions...
如何实现binary tree的从下到上的分层打印?A家电面
share 面试题thread-safe blockingqueue
求救: 打印binary treethread safe blocking queue问题
如何用JAVA中的circular array of queue 解决Josephus problem? (转载)Java Blocking Queue问题
问个题:get max value from Queue, with O(1)?这个Java blocking queue实现是不是有问题?
面试题再问一个blockingqueue的问题
相关话题的讨论汇总
话题: queue话题: stack话题: enqueue话题: pop话题: 实现
进入JobHunting版参与讨论
1 (共1页)
I**A
发帖数: 2345
1
看见好几次了。。。
是不是用两个stack来回折腾?这里面有什么trick没?
p******r
发帖数: 2999
2
没啥trick
其中一个用来push,另一个pop

【在 I**A 的大作中提到】
: 看见好几次了。。。
: 是不是用两个stack来回折腾?这里面有什么trick没?

y****n
发帖数: 579
3
用queue实现stack才是真叫折腾。
p******r
发帖数: 2999
4
有区别?

【在 y****n 的大作中提到】
: 用queue实现stack才是真叫折腾。
y****n
发帖数: 579
5
相比之下time complexity高。

【在 p******r 的大作中提到】
: 有区别?
f*********5
发帖数: 576
6
stack实现queue的话,可以从push stack一次pop出数个item,放入pop stack。
然后连续对pop stack进行操作即可。。
queue实现stack的话,每次都要用一个queue开始的数个元素pop 出,放入另一个queue,
从而得到queue尾的item,取下一个的时候,又要折腾一遍。。

【在 p******r 的大作中提到】
: 有区别?
I**********s
发帖数: 441
7
不需要放入另一个queue吧, 就放入原来的queue就可以了.

queue,

【在 f*********5 的大作中提到】
: stack实现queue的话,可以从push stack一次pop出数个item,放入pop stack。
: 然后连续对pop stack进行操作即可。。
: queue实现stack的话,每次都要用一个queue开始的数个元素pop 出,放入另一个queue,
: 从而得到queue尾的item,取下一个的时候,又要折腾一遍。。

I**A
发帖数: 2345
8
huh?不是来回折腾?
Stack s1
Stack s2
比如add item in 的时候, s1.push
需要remove one item的时候,s1统统pop到s1,取最后一个?然后再pop回去?
我不sure是因为觉得这个法子太笨了些

【在 p******r 的大作中提到】
: 没啥trick
: 其中一个用来push,另一个pop

f*********5
发帖数: 576
9
也对
我说的是2个queue实现stack,
跟一个queue的本质是一样的

【在 I**********s 的大作中提到】
: 不需要放入另一个queue吧, 就放入原来的queue就可以了.
:
: queue,

f*********5
发帖数: 576
10
为啥要pop回去
你找个例子看需要吗

【在 I**A 的大作中提到】
: huh?不是来回折腾?
: Stack s1
: Stack s2
: 比如add item in 的时候, s1.push
: 需要remove one item的时候,s1统统pop到s1,取最后一个?然后再pop回去?
: 我不sure是因为觉得这个法子太笨了些

相关主题
如何用JAVA中的circular array of queue 解决Josephus problem? (转载)一道很难的面试题
问个题:get max value from Queue, with O(1)?Two programming questions...
面试题A家电面
进入JobHunting版参与讨论
I**A
发帖数: 2345
11
pushstack: s1
popstack: s2
enqueue(0)
enqueue(1)
enqueue(2)
now s1 has 0,1,2
now. dequeue
我需要0对吧?
if s2 empty..
{
s2.push(s1.pop()); //2 in
s2.push(s1.pop()); //1 in
}
最后pop出我要的0
咦,好像是不用。。。

【在 f*********5 的大作中提到】
: 为啥要pop回去
: 你找个例子看需要吗

P***a
发帖数: 774
12
one queue can do stack, we don't need two queue

queue,

【在 f*********5 的大作中提到】
: stack实现queue的话,可以从push stack一次pop出数个item,放入pop stack。
: 然后连续对pop stack进行操作即可。。
: queue实现stack的话,每次都要用一个queue开始的数个元素pop 出,放入另一个queue,
: 从而得到queue尾的item,取下一个的时候,又要折腾一遍。。

I**A
发帖数: 2345
13
how?

【在 P***a 的大作中提到】
: one queue can do stack, we don't need two queue
:
: queue,

p******r
发帖数: 2999
14
应该是记录个数,dequeue了之后立马enqueue,n-1次之后得到第n个
好残忍啊,吐出来的东西得立马吃回去。。。

【在 I**A 的大作中提到】
: how?
I**A
发帖数: 2345
15
你dequeue出来的object被enqueue之前存在哪儿?

【在 p******r 的大作中提到】
: 应该是记录个数,dequeue了之后立马enqueue,n-1次之后得到第n个
: 好残忍啊,吐出来的东西得立马吃回去。。。

p******r
发帖数: 2999
16
。。。
q.enqueue(q.dequeue());

【在 I**A 的大作中提到】
: 你dequeue出来的object被enqueue之前存在哪儿?
I**A
发帖数: 2345
17
哦,那你是拿时间来换取空间

【在 p******r 的大作中提到】
: 。。。
: q.enqueue(q.dequeue());

1 (共1页)
进入JobHunting版参与讨论
相关主题
再问一个blockingqueue的问题求救: 打印binary tree
用queue 做树的广度优先遍历,空间复杂度是多少?如何用JAVA中的circular array of queue 解决Josephus problem? (转载)
用一个stack实现queue问个题:get max value from Queue, with O(1)?
这个题目有什么trick面试题
一道面试题一道很难的面试题
请教一个系统设计问题 (转载)Two programming questions...
如何实现binary tree的从下到上的分层打印?A家电面
share 面试题thread-safe blockingqueue
相关话题的讨论汇总
话题: queue话题: stack话题: enqueue话题: pop话题: 实现