[读书笔记]-大话数据结构-4-栈与队列(二)-队列
2017-11-08 19:00
288 查看
队列的定义
队列(queue)是只允许在一端进行拆入操作,而在另一端进行删除操作的线性表。队列是一种先进先出(First In First Out)的线性表,简称FIFO。允许插入的一段称为队尾,允许删除的一端称为队头。class Node(object): #定义链表节点 def __init__(self,data=None): self.data=data self.next=None class LinkQueue(object): def __init__(self): #生成一个空的链队列 self.front=Node(0) #头节点,保存元素的个数 self.rear=self.front def QueueLength(self): #返回队列的长度 return self.count def EnQueue(self,e): #将e插入队列 p=Node(e) #待拆入节点 self.rear.next=p #尾节点下一个节点指向p self.rear=p #尾指针移到p self.front.data+=1 #节点个数+1 def DeQueue(self): if self.rear==self.front:return None #如果链表为空 p=self.front.next #待删除 e=p.data self.front.next=p.next #头结点的下一个节点直接指向p的下个节点 if self.rear==p: #如果删除的是尾节点 self.rear=self.front #维指针指向头节点 self.front.data-=1 return e def ClearQueue(*Q):#将队列清空 self.front=Node(0) self.rear=self.front def QueueEmpty(self):#若队列Q为空,返回true,否则返回false return self.front==self.rear def GetHead(self): #若队列Q存在且非空,用e返回Q的队头元素 if self.front.next==None:return None else: return self.front.next.data
View Code
相关文章推荐
- 大话数据结构 第四章 栈与队列 (读书笔记)
- 《大话数据结构》读书笔记之 队列抽象数据类型(数组实现循环队列)
- [读书笔记]-大话数据结构-4-栈与队列(一)-栈、共享栈和链栈
- 对于线性表,栈与队列,串的读书笔记《大话数据结构》
- <学习JavaScript数据结构与算法>读书笔记之用JS实现栈和队列
- 【CLRS】《算法导论》读书笔记(四):栈(Stack)、队列(Queue)和链表(Linked List)
- 读书笔记SendMessage需要投递到消息队列吗(转)
- 《大话数据结构》读书笔记之线性表基本操作(静态单链表实现)
- 算法第四版读书笔记 - 背包、栈、队列
- 大话数据结构—栈与队列
- 《数据结构与算法-Python语言描述》读书笔记(5)第5章栈和队列(关键词:数据结构/算法/Python/栈/队列)
- 《大话数据结构》读书笔记之线性表基本操作(数组实现)
- 《Linux内核设计与实现》读书笔记(六)- 内核数据结构之链表与队列
- 大话数据结构 读书笔记
- 大话数据结构——队列顺序存储结构
- 【大话数据结构】特殊线性表:栈与队列
- 大话数据结构 第六章 树(读书笔记)
- 《大话数据结构》读书笔记——9.9快速排序
- rabbitMQ 实战 高效部署分布式消息队列 读书笔记
- 《大话数据结构》读书笔记之线性表基本操作(单链表实现)