怎么自己做个网站做链接跳转,动漫设计与制作主修课程有哪些,天津自己制作网站,pc网站自动转换wap网站队列#xff08;queue#xff09;是只允许在一端进行插入操作#xff0c;而在另一端进行删除操作的线性表。 队列是一种先进先出的#xff08;First In First Out#xff09;的线性表#xff0c;简称FIFO。允许插入的一端为队尾#xff0c;允许删除的一端为队头。队列不…队列queue是只允许在一端进行插入操作而在另一端进行删除操作的线性表。 队列是一种先进先出的First In First Out的线性表简称FIFO。允许插入的一端为队尾允许删除的一端为队头。队列不允许在中间部位进行操作假设队列是qa1a2……an那么a1就是队头元素而an是队尾元素。这样我们就可以删除时总是从a1开始而插入时总是在队列最后。这也比较符合我们通常生活中的习惯排在第一个的优先出列最后来的当然排在队伍最后。 队列的实现 同栈一样队列也可以用顺序表或者链表实现。 操作 Queue() 创建一个空的队列enqueue(item) 往队列中添加一个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)if __name__ __main__:q Queue()q.enqueue(hello)q.enqueue(world)q.enqueue(itcast)print q.size()print q.dequeue()print q.dequeue()print q.dequeue()双端队列 双端队列deque全名double-ended queue是一种具有队列和栈的性质的数据结构。 双端队列中的元素可以从两端弹出其限定插入和删除操作在表的两端进行。双端队列可以在队列任意一端入队和出队。 操作 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)if __name__ __main__:deque Deque()deque.add_front(1)deque.add_front(2)deque.add_rear(3)deque.add_rear(4)print deque.size()print deque.remove_front()print deque.remove_front()print deque.remove_rear()print deque.remove_rear()转载于:https://www.cnblogs.com/yzls/articles/9551807.html