码迷,mamicode.com
首页 > 编程语言 > 详细

数据结构与算法:双端队列

时间:2020-06-19 23:13:50      阅读:76      评论:0      收藏:0      [点我收藏+]

标签:算法   size   先进先出   sem   实现   地方   deque   move   返回值   

双端队列和普通队列不同的地方是既可以队首和队尾进行插入,同时也就可以从队首和队尾进行remove删除 ,同时不遵循先进先出或者先进后出的规则,这需要通过具体的算法实现来确定,这个数据结构的实现过程如下:

class Deque:
    def __init__(self):
        self.items = []

    def isEmpty(self):
        return self.items == []

    #   front表示的是队列的右边,rear表示的是队列的左端。

    def addFront(self, item):
        self.items.append(item)

    def addRear(self, item):
        self.items.insert(0, item)

    #   remove方法都会具有一个返回值
    def removeFront(self):
        return self.items.pop()

    def removeRear(self):
        return self.items.pop(0)

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

得解。

数据结构与算法:双端队列

标签:算法   size   先进先出   sem   实现   地方   deque   move   返回值   

原文地址:https://www.cnblogs.com/geeksongs/p/13166716.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!