列表VS双端队列

双端队列支持线程安全,在两端任何一端执行添加和删除,时间复杂度为o(1)。访问两端的索引访问,时间复杂度为o(1)。访问中间元素时间复杂度为o(n)。随机访问还是采用列表


列表:时间复杂度为o(n)




双端队列的实现:
class Deque:
# 模拟双端队列
def __init__(self):
self.items = []
def isEmpty(self):
return self.items == []
def addFront(self,item):
self.items.append(item)
def addRear(self,item):
self.items.insert(0,item)
def removeFront(self):
return self.items.pop()
def removeRear(self):
return self.items.pop(0)
def size(self):
return len(self.items)

posted @ 2015-11-24 20:37  肉球  阅读(290)  评论(0编辑  收藏  举报