zoukankan      html  css  js  c++  java
  • 232. Implement Queue using Stacks

    Implement the following operations of a queue using stacks.

    • push(x) -- Push element x to the back of queue.
    • pop() -- Removes the element from in front of queue.
    • peek() -- Get the front element.
    • empty() -- Return whether the queue is empty.

    Notes:

      • You must use only standard operations of a stack -- which means only push to toppeek/pop from topsize, and is emptyoperations are valid.
      • Depending on your language, stack may not be supported natively. You may simulate a stack by using a list or deque (double-ended queue), as long as you use only standard operations of a stack.
      • You may assume that all operations are valid (for example, no pop or peek operations will be called on an empty queue).

    题目含义:使用stack来实现queue的功能

     1 class MyQueue {
     2     Stack<Integer> input = new Stack();
     3     Stack<Integer> output = new Stack();
     4     /** Initialize your data structure here. */
     5     public MyQueue() {
     6         
     7     }
     8     
     9     /** Push element x to the back of queue. */
    10     public void push(int x) {
    11         input.push(x);     
    12     }
    13     
    14     /** Removes the element from in front of queue and returns that element. */
    15     public int pop() {
    16              peek();
    17         return output.pop();   
    18     }
    19     
    20     /** Get the front element. */
    21     public int peek() {
    22         if (output.empty())
    23             while (!input.empty())
    24                 output.push(input.pop());
    25         return output.peek();
    26         
    27     }
    28     
    29     /** Returns whether the queue is empty. */
    30     public boolean empty() {
    31          return input.empty() && output.empty();
    32     }
    33 }
  • 相关阅读:
    python (八)迭代器、生成器、列表推导式
    python (七)装饰器
    HTML基础 (一)
    jQuery(一)
    JavaScript 练习(二)事件
    DOM节点(二)
    git操作顺序
    VUE练习(二)解决Bug
    前端环境VSCode
    JavaScript 基础基础最基础
  • 原文地址:https://www.cnblogs.com/wzj4858/p/7725664.html
Copyright © 2011-2022 走看看