python实现队列结构

# -*- 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.append(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:UserssuneeeAppDataLocalProgramsPythonPython36python.exe E:/wangjz/PyWorkSpace/LearnPython/PY0929/queue.py
队列元素(正向排队):
[1, 2, 3]
队首元素: 3
出队后元素:
[1, 2]
队列是否为空: 否
---继续出队
---继续出队
队列是否为空: 是

Process finished with exit code 0
原文地址:https://www.cnblogs.com/kusy/p/9754019.html