Python | Leetcode Python题解之第232题用栈实现队列

题目:

题解:

class MyQueue:

    def __init__(self):
        self.A, self.B = [], []

    def push(self, x: int) -> None:
        self.A.append(x)

    def pop(self) -> int:
        peek = self.peek()
        self.B.pop()
        return peek

    def peek(self) -> int:
        if self.B: return self.B[-1]
        if not self.A: return -1
        # 将栈 A 的元素依次移动至栈 B
        while self.A:
            self.B.append(self.A.pop())
        return self.B[-1]

    def empty(self) -> bool:
        return not self.A and not self.B

相关推荐

  1. 232.实现队列

    2024-07-13 13:58:04       34 阅读
  2. 算法10天|232.实现队列225. 队列实现

    2024-07-13 13:58:04       49 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 13:58:04       49 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 13:58:04       53 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 13:58:04       42 阅读
  4. Python语言-面向对象

    2024-07-13 13:58:04       53 阅读

热门阅读

  1. 2024年城市客运安全员考试题库及答案

    2024-07-13 13:58:04       13 阅读
  2. SwiftBrush算法与代码解读

    2024-07-13 13:58:04       16 阅读
  3. 005-基于Sklearn的机器学习入门:逻辑回归

    2024-07-13 13:58:04       26 阅读
  4. opencv—常用函数学习_“干货“_总

    2024-07-13 13:58:04       18 阅读
  5. Web组成架构

    2024-07-13 13:58:04       20 阅读
  6. Artificial intelligence machine learning DATA4800

    2024-07-13 13:58:04       20 阅读
  7. 自用的C++20协程学习资料

    2024-07-13 13:58:04       15 阅读
  8. 如何在uniapp中使用websocket?

    2024-07-13 13:58:04       14 阅读
  9. 【linux】预防rm误删文件的3种方法

    2024-07-13 13:58:04       20 阅读
  10. 掌控版本脉动:Gradle依赖更新策略全解析

    2024-07-13 13:58:04       17 阅读
  11. 解释器模式(大话设计模式)C/C++版本

    2024-07-13 13:58:04       16 阅读
  12. 资源搜索网址

    2024-07-13 13:58:04       15 阅读