双端队列:是一种具有栈和队列性质的数据结构
栈和队列只能从一端添加元素,也只能从一端删除元素
双端队列可以从任意一端添加或删除元素
使用python列表实现代码:
class Deque(object): """双端队列""" def __init__(self): self.items = list() def is_empty(self): """判空""" return self.items == [] def size(self): """获取队列元素个数""" return len(self.items) def add(self, item): """从头部入队列""" self.items.insert(0, item) def append(self, item): """从尾部入队列""" self.items.append(item) def pop_tail(self): """从尾部出队列""" self.items.pop() def pop_head(self): """从头部出队列""" del self.items[0]