zoukankan      html  css  js  c++  java
  • LeetCode--225--用队列实现栈

    问题描述:

    使用队列实现栈的下列操作:

    • push(x) -- 元素 x 入栈
    • pop() -- 移除栈顶元素
    • top() -- 获取栈顶元素
    • empty() -- 返回栈是否为空

    注意:

    • 你只能使用队列的基本操作-- 也就是 push to back, peek/pop from front, size, 和 is empty 这些操作是合法的。
    • 你所使用的语言也许不支持队列。 你可以使用 list 或者 deque(双端队列)来模拟一个队列 , 只要是标准的队列操作即可。
    • 你可以假设所有操作都是有效的(例如, 对一个空的栈不会调用 pop 或者 top 操作)。

    方法:

     1 class MyStack(object):
     2 
     3     def __init__(self):
     4         """
     5         Initialize your data structure here.
     6         """
     7         self.lists = []
     8 
     9     def push(self, x):
    10         """
    11         Push element x onto stack.
    12         :type x: int
    13         :rtype: void
    14         """
    15         self.lists.append(x)
    16 
    17     def pop(self):
    18         """
    19         Removes the element on top of the stack and returns that element.
    20         :rtype: int
    21         """
    22         if len(self.lists) == 0:
    23             return
    24         return self.lists.pop()
    25 
    26     def top(self):
    27         """
    28         Get the top element.
    29         :rtype: int
    30         """
    31         return self.lists[-1]
    32 
    33     def empty(self):
    34         """
    35         Returns whether the stack is empty.
    36         :rtype: bool
    37         """
    38         return len(self.lists) == 0

    2018-09-19 15:07:25

  • 相关阅读:
    JavaScript数组升降序排列、最大值、最小值等
    css3箭头
    隐藏显示
    最后一个 last-of-type
    jquery函数封装
    为什么要使用rem
    Git的使用--如何将本地项目上传到Github
    jQuery判断是否选中
    数组索引赋值
    HTML中input和button设置同样高度却不能等高的原因
  • 原文地址:https://www.cnblogs.com/NPC-assange/p/9674672.html
Copyright © 2011-2022 走看看