Python学习数据结构之双端队列:
双端队列是栈和队列的结合体,在首尾都可以添加和删减元素,属于有序集合。
让我们使用Python实现一下:
class Deque :
#初始化:
def __init__(self):
self.items = []
#判断是否为空:
def isempty(self):
return self.items == []
#头部添加:
def addFront(self,e):
self.items.append(e)
#尾部添加:
def addRear(self,e):
self.items.insert(0,e)
#头部弹出:
def removeFront(self):
return self.items.pop()
#尾部弹出:
def removeRear(self):
return self.items.pop(0)
#返回长度:
def size(self):
return len(self.items)
s = Deque()
s.addFront(3)
s.addFront(67)
s.addRear(2)
print(s.removeFront())
print(s.removeRear())
print(s.size())
67
2
1