本文是学习陆老师的《python全栈工程师 - 数据结构与算法》课程的笔记,欢迎学习交流。同时感谢陆老师的精彩传授!
一、课程目标
- 队列的概念
- 队列的python实现
二、详情解读
01.什么是队列: 队列是一种线性表
1、队列从尾部插入、从头部弹出
2、队列的数据访问遵从FIFO(first-in first-out)协议
3、除了基本队列结构以外还有双向队列与优先队列

02.队列的Python实现
主要方法列表:
| 方法 | 说明 |
|---|---|
| q.isEmpty() | 队列是否为空 |
| q.__ len __() | 队列中的项目数 |
| q.put() | 在队列压入一项 |
| q.get() | 如果q不为空,返回并删除第一项,否则抛出错误EmptyError |
队列的实现



链表实现队列
1、使用链表实现队列,从链表首部压入与尾部弹出
2、需要设定一个尾部位置标志
3、时间复杂度为O(1)

02.Python内置队列
queue模块与collections.deque
1.queue.Queue - FIFO队列
2.queue.LifoQueue - LIFO队列
3.queue.PriorityQueue - 优先级队列
4.queue.deque(collections.deque) - 双向队列
队列中常用方法
| 方法 | 说明 |
|---|---|
| q.empty() | 队列是否为空 |
| q.qsize() | 队列中的项目数 |

本文是关于Python中队列的学习笔记,详细介绍了队列的概念、使用链表和Python内置`queue`模块实现队列的方法,包括FIFO、LIFO和优先级队列。还探讨了`collections.deque`作为双向队列的应用。
最低0.47元/天 解锁文章
695

被折叠的 条评论
为什么被折叠?



