队列的介绍
- 队列是一种有序列表,可以用数组或者链表来实现
- 遵循先进先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出。
- 入队 将一个数据放到队列尾部;出队 从队列的头部取出一个元素
- 队列的示意图:(使用数组模拟队列)
数组模拟队列
思路分析
- 定时变量
- maxLength:数组的最大容量
- front:队列头
- rear:队列尾
- data:实际的数据存储
- 初始化是对变量进行初初始化
- 添加数据是移动rear尾指针,参照上图
- 移除数据时移动front头指针,参照上图
代码实现
1 | package com.data.structure; |
代码分析
- 简单使用数组实现了队列的功能
- 不是一个环形队列,对于已经取出数据的空间不能使用,导致空间浪费
- 只能使用一次的队列,不能进行复用,可以使用循环队列进行改进
用数组模拟环形队列
1 | package com.data.structure; |
- 本文作者: 半度微凉
- 本文链接: http://www.taoweidong.com/2020/02/29/Java数据结构和算法-队列的学习记录/
- 版权声明: 本博客所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明出处!