ToB企服应用市场:ToB评测及商务社交产业平台
标题:
LinkedList集合应用:实现队列
[打印本页]
作者:
tsx81428
时间:
2023-3-3 07:25
标题:
LinkedList集合应用:实现队列
LinkedList集合应用:实现队列
题目:
使用LinkedList类实现一个Queue(队列)类。Queue类应该具有以下功能:
void enqueue(E element):将给定的元素添加到队列的末尾。
E dequeue():删除并返回队列的第一个元素。如果队列为空,则抛出NoSuchElementException异常。
E peek():返回队列的第一个元素。如果队列为空,则抛出NoSuchElementException异常。
int size():返回队列中的元素数量。
boolean isEmpty():如果队列为空,则返回true,否则返回false。
class Queue<E> {
// 使用LinkedList实现队列
private LinkedList<E> list;
public Queue() {
// 初始化队列
list = new LinkedList<>();
}
public void enqueue(E element) {
// 将给定的元素添加到队列的末尾
list.addLast(element);
}
public E dequeue() {
// 删除并返回队列的第一个元素
// 如果队列为空,则抛出NoSuchElementException异常
if (list.isEmpty()) {
throw new NoSuchElementException();
}else {
return list.remove(0);
}
}
public E peek() {
// 返回队列的第一个元素
// 如果队列为空,则抛出NoSuchElementException异常
if (list.isEmpty()) {
throw new NoSuchElementException();
}else {
return list.getFirst();
}
}
public int size() {
// 返回队列中的元素数量
return list.size();
}
public boolean isEmpty() {
// 如果队列为空,则返回true,否则返回false
if (list.size()==0) {
return true;
}else {
return false;
}
}
}
复制代码
添加测试类:
public class Task {
public static void main(String[] args) {
Queue<Integer> queue = new Queue<>();
// 加入队列
queue.enqueue(1);
queue.enqueue(2);
queue.enqueue(3);
// 出队
System.out.println(queue.dequeue());
// 查看队首元素
System.out.println(queue.peek());
// 查看队列大小
System.out.println(queue.size());
System.out.println(queue.isEmpty());
}
}
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4