python实现各种常用算法之数据结构(3)
python实现队列的操作 -----------------. 队列的介绍 队列 (queue) 是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。 队列符合先进先出[FIFO]的原则。因为要排队的第一个项目,最终将是第一个要出列的项目,如在现实生活中的队列,先来的站在队列前面,后来的就只能站在队列后面啦。 队列属于常见的一种线性结构,对于出队和进队而言,时间复杂度都为 O(1) 基本功能介绍 队列有两种实现形式,分为两种: 数组和链表 。 在接下来的内容里,下面以 链表的形式 实现队列,逐步介绍具体功能是如何实现的。 创建 Node 类 创建一个 Node 的类,作为基础数据结构:链点,并初始化对应的内参。 class Node ( object ) : def __init__ ( self , elem , next = None ) : self . elem = elem # 表示对应的元素值 self . next = next # 表示下一个链接的链点 创建 Queue 类 创建一个 Queue 的类,以链表形式的队列,并初始化对应的内参。 class Queue ( object ) : def __init