⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arrayqueue.java

📁 JAVA实现的数据结构
💻 JAVA
字号:
//                      queue implemented as an array

public class ArrayQueue {
    private int first, last, size;
    private Object[] storage;
    public ArrayQueue() {
        this(100);
    }
    public ArrayQueue(int n) {
        size = n;
        storage = new Object[size];
        first = last = -1;
    }
    public boolean isFull()  {
        return first == 0 && last == size-1 || first == last + 1;
    }
    public boolean isEmpty() {
        return first == -1;
    }
    public void enqueue(Object el) {
        if (last == size-1 || last == -1) {
             storage[0] = el;
             last = 0;
             if (first == -1)
             first = 0;
        }
        else storage[++last] = el;
    }
    public Object dequeue() {
        Object tmp = storage[first];
        if (first == last)
             last = first = -1;
        else if (first == size-1)
             first = 0;
        else first++;
        return tmp;
    }
    public String toString() {
        return java.util.Arrays.toString(storage);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -