Java 数据结构 & 算法宁可累死自己, 也要卷死别人 4 队列
Posted 我是小白呀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 数据结构 & 算法宁可累死自己, 也要卷死别人 4 队列相关的知识,希望对你有一定的参考价值。
【Java 数据结构 & 算法】⚠️宁可累死自己, 也要卷死别人 5⚠️ 队列
概述
从今天开始, 小白我将带大家开启 Jave 数据结构 & 算法的新篇章.
队列
队列 (Queue) 遵循先进先出的原则 (First-In-First-Out). 举个例子, 早上我们排队买早餐的时候, 先排的人先买后排的人后买.
队列只能在队首进行删除操作, 在队尾进行插入操作.
队列实现
enqueue 方法
// 入队
public void enqueue(E element)
array.add(array.size(), element);
dequeue 方法
// 出队
public E dequeue()
E element = array.get(0);
array.remove(0);
return element;
main
public static void main(String[] args)
// 创建队列
Queue<Integer> queue = new Queue<>();
// 存入5个元素
for (int i = 0; i < 5; i++)
queue.enqueue(i);
System.out.println(queue);
// 取出5个元素
for (int i = 0; i < 5; i++)
queue.dequeue();
System.out.println(queue);
输出结果:
Queuearray=[0]
Queuearray=[0, 1]
Queuearray=[0, 1, 2]
Queuearray=[0, 1, 2, 3]
Queuearray=[0, 1, 2, 3, 4]
Queuearray=[1, 2, 3, 4]
Queuearray=[2, 3, 4]
Queuearray=[3, 4]
Queuearray=[4]
Queuearray=[]
完整代码
import java.util.ArrayList;
public class Queue<E>
private ArrayList<E> array;
// 无参构造
public Queue()
array = new ArrayList<>(10);
// 有参构造
public Queue(int capacity)
array = new ArrayList<>(capacity);
// 入队
public void enqueue(E element)
array.add(array.size(), element);
// 出队
public E dequeue()
E element = array.get(0);
array.remove(0);
return element;
// 队列是否为空
public boolean isEmpty()
return array.isEmpty();
// 队列长度
public int getSize()
return array.size();
// toString
@Override
public String toString()
return "Queue" +
"array=" + array +
'';
public static void main(String[] args)
// 创建队列
Queue<Integer> queue = new Queue<>();
// 存入5个元素
for (int i = 0; i < 5; i++)
queue.enqueue(i);
System.out.println(queue);
// 取出5个元素
for (int i = 0; i < 5; i++)
queue.dequeue();
System.out.println(queue);
以上是关于Java 数据结构 & 算法宁可累死自己, 也要卷死别人 4 队列的主要内容,如果未能解决你的问题,请参考以下文章
Java 数据结构 & 算法宁可累死自己, 也要卷死别人 20 排序算法
Java 数据结构 & 算法宁可累死自己, 也要卷死别人 18 贪心算法
Java 数据结构 & 算法宁可累死自己, 也要卷死别人 18 贪心算法
Java 数据结构 & 算法宁可累死自己, 也要卷死别人 17 KMP 算法