由两个栈组成的队列

Posted 牛哄哄的柯南

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了由两个栈组成的队列相关的知识,希望对你有一定的参考价值。

由两个栈组成的队列

【题目】

​ 编写一个类,用两个栈实现队列,支持队列的基本操作(add、poll、peek)。

【思路】

​ 前景知识:栈,先进后出;队列,先进先出

​ 两个栈实现队列,用两个栈就是为了让栈中的数据反转一次,数据如a栈,把a栈的数据都pop出来push到b栈,这样a栈栈底的东西就会到b栈的栈顶了,有两个前提:

  • a栈往b栈压数据时,必须把a栈中数据全部压入b栈
  • 只有b栈为空,才能往b栈压入数据

【代码】

package keafmd.accumulate.codeinterviewguide.twostacksformaqueue;

import 

以上是关于由两个栈组成的队列的主要内容,如果未能解决你的问题,请参考以下文章

由两个栈组成的队列

由两个栈组成队列

由两个栈组成的队列

由两个栈组成的队列(C++实现)

005 两个栈组成队列

两个栈组成的队列