【发布时间】:2018-05-30 17:16:46
【问题描述】:
我对以下伪代码感到困惑
■ 使用单个队列实现堆栈。具体来说,写 使用 enqueue 在堆栈上进行推送和弹出操作的伪代码 和队列的出队操作。考虑给定队列类 给你。我们将使用单个队列 q。考虑队列的前面是栈顶
推(x)
s = q.size()
q.enqueue(x)
for(int i = 0; i < s; i++)
q.enqueue(q.dequeue())
pop()
if q.isEmpty()
“Exception”
return q.dequeue()
我意识到堆栈的底部是队列的尾部。所以当我们入队时,它必须在栈底。所以我们必须从堆栈中删除所有内容并将该项目推入,然后将所有内容放回原处。我不明白“for(int i = 0; i
【问题讨论】:
-
刚刚修复。它使用队列实现堆栈。对不起