队列
1. 逻辑结构
队列(Queue)是一种线性的逻辑结构,但是:
- 它只允许在一端插入元素,在另一端删除元素
- 插入的一端称作队尾,删除的一端称为队头。
- 队列具有先进先出(First In Fist Out, FIFO)的特性。
2. 操作
- init_queue 初始化
- is_empty 判断空
- is_full 判断满
- enter_queue 入队列
- delete_queue 出队列
- get_head 取队列头部元素
3. 顺序实现(循环队列)
3.1. 存储结构
3.2. 操作实现
初始化
入队操作
出队操作
取队首
判断是否为空
判断是否满
4. 链式实现(单循环链表实现)
4.1. 存储结构定义
数据结构定义同带头结点的循环单链表。
4.2. 操作实现
初始化
入队
出队
判断空
取队首