ToB企服应用市场:ToB评测及商务社交产业平台

标题: LinkedList集合应用:实现队列 [打印本页]

作者: tsx81428    时间: 2023-3-3 07:25
标题: LinkedList集合应用:实现队列
LinkedList集合应用:实现队列

题目:

使用LinkedList类实现一个Queue(队列)类。Queue类应该具有以下功能:
 
  1. class Queue<E> {
  2.     // 使用LinkedList实现队列
  3.     private LinkedList<E> list;
  4.     public Queue() {
  5.         // 初始化队列
  6.         list = new LinkedList<>();
  7.     }
  8.     public void enqueue(E element) {
  9.         // 将给定的元素添加到队列的末尾
  10.         list.addLast(element);
  11.     }
  12.     public E dequeue() {
  13.         // 删除并返回队列的第一个元素
  14.         // 如果队列为空,则抛出NoSuchElementException异常
  15.         if (list.isEmpty()) {
  16.             throw new NoSuchElementException();
  17.         }else {
  18.             return list.remove(0);
  19.         }
  20.     }
  21.     public E peek() {
  22.         // 返回队列的第一个元素
  23.         // 如果队列为空,则抛出NoSuchElementException异常
  24.         if (list.isEmpty()) {
  25.             throw new NoSuchElementException();
  26.         }else {
  27.             return list.getFirst();
  28.         }
  29.     }
  30.     public int size() {
  31.         // 返回队列中的元素数量
  32.         return list.size();
  33.     }
  34.     public boolean isEmpty() {
  35.         // 如果队列为空,则返回true,否则返回false
  36.         if (list.size()==0) {
  37.             return  true;
  38.         }else {
  39.             return false;
  40.         }
  41.     }
  42. }
复制代码
添加测试类:
  1. public class Task {
  2.     public static void main(String[] args) {
  3.         Queue<Integer> queue = new Queue<>();
  4.         // 加入队列
  5.         queue.enqueue(1);
  6.         queue.enqueue(2);
  7.         queue.enqueue(3);
  8.         // 出队
  9.         System.out.println(queue.dequeue());
  10.         // 查看队首元素
  11.         System.out.println(queue.peek());
  12.         // 查看队列大小
  13.         System.out.println(queue.size());
  14.         System.out.println(queue.isEmpty());
  15.     }
  16. }
复制代码
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4