zoukankan      html  css  js  c++  java
  • 数据结构_队列(普通队列和双端队列)

    队列
    '''
    Queue()         创建一个空队列
    enqueue(item)   添加元素
    dequeue()       从队列头部删除一个元素
    is_empty()      判断一个队列是否为空
    size()          返回队列的大小
    '''
    class Queue(object):
        '''队列'''
        def __init__(self):
            self.items = []
    
        def is_empty(self):
            return self.items == []
    
        def enqueue(self,item):
            '''进队列'''
            self.items.insert(0,item)
    
        def dequeue(self):
            '''出队列'''
            return self.items.pop()
    
        def size(self):
            '''返回队列的大小'''
            return len(self.items)

    双端队列
    '''
    Deque()             创建一个空的双端队列
    add_front(item)     从队头加入一个item元素
    add_rear(item)      从队尾加入一个item元素
    remove_front()      从队头删除一个item元素
    remove_rear()       从队尾删除一个item元素
    is_empty()          判断双端队列是否为空
    size()              返回队列的大小
    '''
    
    class Deque(object):
        '''双端队列'''
        def __init__(self):
            self.items = []
    
        def is_empty(self):
            """判断队列是否为空"""
            return self.items == []
    
        def add_front(self,item):
            """在队头添加元素"""
            self.items.insert(0,item)
    
        def add_rear(self,item):
            """在队尾添加元素"""
            self.items.append(item)
    
        def remove_front(self):
            """从队头删除元素"""
            return self.items.pop(0)
    
        def remove_rear(self):
            """从队尾删除元素"""
            return self.items.pop()
    
        def size(self):
            """返回队列大小"""
            return len(self.items)

    2020-05-07

  • 相关阅读:
    java实现文件上传下载至ftp服务器
    理解java代理模式
    [置顶] 理解java中的线程池
    wait,notify,非阻塞队列实现生产者,消费者模型
    理解java阻塞队列BlockingQueue
    CentOS下安装配置Nginx
    putty笔记
    CentOs下安装jdk、MySql、Redis笔记
    简述yum和apt-get的区别
    Linux 文件颜色说明
  • 原文地址:https://www.cnblogs.com/hany-postq473111315/p/12845346.html
Copyright © 2011-2022 走看看