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()); } }
本文作者:yaomagician
本文链接:https://www.cnblogs.com/yaomagician/p/17171717.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步