美文网首页
Python编程题31--用列表实现队列

Python编程题31--用列表实现队列

作者: wintests | 来源:发表于2021-11-27 13:46 被阅读0次

题目

队列是一种常见的数据结构,其特点是 先进先出,并且只能从队尾进队头出,也就是说最先放进去的元素,能够最先取出来。

请使用 列表list 模拟实现队列的下列操作:

  • push(x) -- 将元素 x 推到队列的末尾
  • pop() -- 从队列开头移除元素
  • peek() -- 返回队列开头的元素
  • empty() -- 判断队列是否为空
  • size() -- 获取队列的长度

说明:假设每次调用 pop 和 peek 都能保证队列不为空。

代码实现

class MyQueue:

    def __init__(self):
        self.q = []

    def push(self, x):
        self.q.append(x)

    def pop(self):
        self.q.pop(0)

    def peek(self):
        return self.q[0]

    def empty(self):
        return self.q == []

    def size(self):
        return len(self.q)

测试过程

if __name__ == '__main__':
    queue = MyQueue()
    queue.push(11)  # 入队
    queue.push(22)  # 入队
    print(queue.peek())
    print(queue.size())
    queue.pop()  # 出队
    print(queue.empty())
    print(queue.peek())
    queue.pop()  # 出队
    print(queue.size())
    print(queue.empty())

执行代码后,得到如下结果:

11
2
False
22
0
True

更多Python编程题,等你来挑战:Python编程题汇总(持续更新中……)

相关文章

  • Python编程题31--用列表实现队列

    题目 队列是一种常见的数据结构,其特点是 先进先出,并且只能从队尾进队头出,也就是说最先放进去的元素,能够最先取出...

  • 2019-03-14

    【编程题】 用两个栈实现队列 【剑指系列】用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为...

  • 万能的list列表,python中的堆栈、队列实现全靠它

    在python编程中很多的数据计算都需要依靠列表来实现,比如Java编程中的堆栈结构/队列结构也可以通过list列...

  • 数据结构-循环队列(Python实现)

    今天我们来到了循环队列这一节,之前的文章中,我介绍过了用python自带的列表来实现队列,这是最简单的实现方法。 ...

  • Python编程题33--用栈实现队列

    题目 栈和队列是常见的数据结构,栈的特点是 先进后出,而队列的特点是 先进先出。 请使用 栈 模拟实现队列的下列操...

  • Python编程题34--用队列实现栈

    题目 栈和队列是常见的数据结构,队列的特点是 先进先出,而栈的特点是 先进后出。 请使用 队列 模拟实现栈的下列操...

  • 数据结构——栈和队列

    用数组实现栈和队列 用栈实现队列 用队列实现栈 栈和队列的经典算法题最小间距栈宠物收养所 数组实现栈和队列 用数组...

  • Python编程题30--用列表实现栈

    题目 栈是一种常见的数据结构,其特点是 先进后出,也就是说最先放进去的元素,需要到最后才能取出来。 请使用 列表l...

  • leecode刷题(26)-- 用栈实现队列

    leecode刷题(26)-- 用栈实现队列 用栈实现队列 使用栈实现队列的下列操作: push(x) -- 将一...

  • Python——用列表实现栈和队列

    1 用列表实现栈的功能 栈是一种“先进后出”的数据结构,可以用python内置的列表实现它。栈有两个最基本的操作:...

网友评论

      本文标题:Python编程题31--用列表实现队列

      本文链接:https://www.haomeiwen.com/subject/jccitrtx.html