多平台统一管理软件接口,如何实现多平台统一管理软件接口
293
2022-08-27
Java 数据结构与算法系列精讲之队列
目录概述队列队列实现enqueue方法dequeue方法main完整代码
概述
从今天开始, 小白我将带大家开启 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
// 存入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);
}
}
输出结果:
Queue{array=[0]}
Queue{array=[0, 1]}
Queue{array=[0, 1, 2]}
Queue{array=[0, 1, 2, 3]}
Queue{array=[0, 1, 2, 3, 4]}
Queue{array=[1, 2, 3, 4]}
Queue{array=[2, 3, 4]}
Queue{array=[3, 4]}
Queue{array=[4]}
Queue{array=[]}
完整代码
import java.util.ArrayList;
public class Queue
private ArrayList
// 无参构造
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 mainhttp://(String[] args) {
// 创建队列
Queue
// 存入5个元素
for (int i = 0; i < 5; i++) {
queue.enqueue(i);
http:// System.out.println(queue);
}
// 取出5个元素
for (int i = 0; i < 5; i++) {
queue.dequeue();
Systehttp://m.out.println(queue);
}
}
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~