Loading

6.1 队列的链表实现 Java版

1.什么是队列?

队列和栈不同,它是一个先进先出表,它的特性是先进先出,先被存进的元素先被取出。

我们可以使用数组去实现队列,但是对于数组实现而言,队列用链表来实现更为简单。

2.应用

  • 操作系统的顺序任务调度
  • 模拟现实世界中的队列
  • 多道程序设计
  • 异步数据传输
  • 作为辅助数据结构(二叉树层次遍历)

3.Java实现

3.1 基于链表的实现

首先定义队列接口:

public interface Queue {
   

    boolean isEmpty();

    boolean isFull();

    int size();

    void offer(int data);

    int poll();

}

然后是队列的链表实现

/**
 * 链表实现队列
 */
public class LinkQueue implements Queue{
   


    //队列头部
    Node head;
    // 队列尾部
    Node tail;
    // 队列元素数量
    int size;
    // 队列容量
    int capacity;

    static class Node {
   
        int data;
        Node next;
        Node(int data){
   
            this.data = data;
        }
    
posted @ 2023-03-31 09:53  文牧之  阅读(31)  评论(0)    收藏  举报  来源