队列
队列,在原则上也是线性表的一种。
队列与栈类似,栈在一个位置添加和删除,队列却是把删除的操作,放到了另一侧,可以简单的理解为栈底,但是这个栈底是通的,不是封闭的。
总结而言,队列是特殊的线性表,添加和删除位置受限,只允许在线性表的前端进行删除操作,只允许在线性表的后端进行添加操作。与栈类似,相应的可以提取名词和概念为,在插入操作的端称为队尾,在删除操作的端为队首。
EG: 比如排队做核酸检查,先排队的先做,做完后直接出队伍,然后不可以停留。
概念
- 入列: 在线性表的尾端进行添加操作,这个动作叫做入列。
- 出列: 在线性表的头部进行删除操作,这个动作叫做出列。
- 队首: 出列位置。
- 队尾: 入列位置。
这些概念可以联想排队做事的动作。
数组实现队列
队列是一种线性表,这里使用一个int类型的数组实现队列操作。
主要思路: 见注释
链表实现队列
队列也可以用链表实现,这里用没有链表头的单向链表模型实现队列。
主要思路: 见注释