• 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
  • 相关阅读:
    研究下线程投递
    IOCP笔记
    线程同步之mutex和Semaphore
    线程同步之mutex和event区别
    MyStack
    unix环境高级编程 读书笔记
    binary search tree study
    技术博客地址搜集
    select收数据
    奇怪的问题
  • 原文地址:https://www.cnblogs.com/kusy/p/9754019.html
Copyright © 2020-2023  润新知