python实现队列结构

本文共1191字,阅读本文大概需要2~4分钟

复制代码
# -*- coding:utf-8 -*-
# __author__ :kusy
# __content__:文件说明
# __date__:2018/10/8 13:49


class MyQueue(object):
    def __init__(self):
        self.queue_list = []
        self.count = 0

    # 创建一个队列
    def create_queue(self):
        return self.queue_list

    # 入队
    def add(self, value):
        self.queue_list.insert(0, value)
        self.count += 1

    # 返回队首元素值
    def front(self):
        if self.count:
            return self.queue_list[-1]

    # 出队
    def pop(self):
        self.queue_list.pop()
        self.count -= 1

    # 返回队列是否为空
    def is_empty(self):
        return self.count == 0

    # 打印队列内容
    def print_all(self):
        print(self.queue_list)


if __name__ == '__main__':
    mq = MyQueue()
    mq.create_queue()
    mq.add(1)
    mq.add(2)
    mq.add(3)
    print('队列元素(正向排队):')
    mq.print_all()
    print('队首元素:', mq.front())
    mq.pop()
    print('出队后元素:')
    mq.print_all()
    print('队列是否为空:', '' if mq.is_empty() else '')
    print('---继续出队')
    mq.pop()
    print('---继续出队')
    mq.pop()
    print('队列是否为空:', '' if mq.is_empty() else '')
复制代码

 

 

运行结果:

复制代码
C:\Users\suneee\AppData\Local\Programs\Python\Python36\python.exe E:/wangjz/PyWorkSpace/LearnPython/PY0929/queue.py

   队列元素(正向排队):
   [3, 2, 1]
   队首元素: 1
   出队后元素:
   [3, 2]
   队列是否为空: 否
   ---继续出队
   ---继续出队
   队列是否为空: 是

Process finished with exit code 0
复制代码

 



如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。

posted on   一個未来  阅读(757)  评论(2编辑  收藏  举报

编辑推荐:
· .NET 9 new features-C#13新的锁类型和语义
· Linux系统下SQL Server数据库镜像配置全流程详解
· 现代计算机视觉入门之:什么是视频
· 你所不知道的 C/C++ 宏知识
· 聊一聊 操作系统蓝屏 c0000102 的故障分析
阅读排行:
· DeepSeek V3 两周使用总结
· 回顾我的软件开发经历(1)
· C#使用yield关键字提升迭代性能与效率
· 低成本高可用方案!Linux系统下SQL Server数据库镜像配置全流程详解
· 4. 使用sql查询excel内容

导航

统计

点击右上角即可分享
微信分享提示