• 232. 用栈实现队列


    232. 用栈实现队列

    方法一

    class MyQueue(object):
    
        def __init__(self):
            """
            Initialize your data structure here.
            """
            self.stack1 = []
            self.stack2 = []
            
    
        def push(self, x):
            """
            Push element x to the back of queue.
            :type x: int
            :rtype: void
            """
            self.stack1.append(x)
            
    
        def pop(self):
            """
            Removes the element from in front of queue and returns that element.
            :rtype: int
            """
            if self.stack2:
                return self.stack2.pop()
            else:
                while self.stack1:
                    e = self.stack1.pop()
                    self.stack2.append(e)
                return self.stack2.pop()
            
    
        def peek(self):
            """
            Get the front element.
            :rtype: int
            """
            if self.stack2:
                return self.stack2[len(self.stack2) - 1]
            else:
                while self.stack1:
                    e = self.stack1.pop()
                    self.stack2.append(e)
                return self.stack2[len(self.stack2) - 1]
            
    
        def empty(self):
            """
            Returns whether the queue is empty.
            :rtype: bool
            """
            if len(self.stack1) == 0 and len(self.stack2) == 0:
                return True
            else:
                return False
            
    
    
    # Your MyQueue object will be instantiated and called as such:
    # obj = MyQueue()
    # obj.push(x)
    # param_2 = obj.pop()
    # param_3 = obj.peek()
    # param_4 = obj.empty()
    """
    • push(x) -- 将一个元素放入队列的尾部。
    • pop() -- 从队列首部移除元素。
    • peek() -- 返回队列首部的元素。
    • empty() -- 返回队列是否为空。
    """
  • 相关阅读:
    AjaxHelper使用范例
    IE浏览器的条件编译指令和微软的ajax实现
    基于AjaxHelper0.41的相册范例程序演示及一个关于博客园的功能建议
    AjaxHelper 0.41
    .Net环境下基于Ajax的MVC方案
    Msys/MinGW与Cygwin/gcc[转]
    常见应用程序的架构
    perl正则表达式[转]
    [CruiseControl] 概念
    MinGW
  • 原文地址:https://www.cnblogs.com/xiao-xue-di/p/10297705.html
Copyright © 2020-2023  润新知