寒光博客

[java] Queue 队列的实现
Queue 队列是一种先进先出 后进后出的数据结构~~ 就像是食堂排队一样 不同于栈 先进后出 后进先出~ 用例算...
扫描右侧二维码阅读全文
21
2019/10

[java] Queue 队列的实现

Queue

队列是一种先进先出 后进后出的数据结构~~
就像是食堂排队一样
不同于栈 先进后出 后进先出~

用例算法:

IQueue 接口

package _09_Linear.Queue;

public interface IQueue<T> {
    /**
     * 入队 追加到尾部
     * @param e
     */
    void enqueue(T e);

    /**
     * 出队 取出头部
     * @return
     */
    T dequeue();

    /**
     * 返回队列的大小
     * @return
     */
    int getSize();

    /**
     * 判断是否为空
     * @return
     */
    boolean empty();

    /**
     * 取队首元素
     * @return
     */
    T peek();
}

MyQueue 功能实现

package _09_Linear.Queue;

import _09_Linear.list.DoubleLinkList;
import _09_Linear.list.ListNode;

public class MyQueue<T> extends DoubleLinkList<T> implements IQueue<T> {

    @Override
    public void enqueue(T e) {
        super.add(e);
    }

    @Override
    public T dequeue() {
        ListNode<T> h = first.getNext();
        first.setNext(h.getNext());
        h.setNext(null);
        h.setPre(null);
        size--;
        return h.getData();
    }

    @Override
    public int getSize() {
        return size;
    }

    @Override
    public boolean empty() {
        return getSize()==0;
    }

    @Override
    public T peek() {
        return first.getNext().getData();
    }
}
本文作者:Author:     文章标题:[java] Queue 队列的实现
本文地址:https://dxoca.cn/java/303.html       百度未收录
版权说明:若无注明,本文皆为“Dxoca's blog (寒光博客)”原创,转载请保留文章出处。
Last modification:October 22nd, 2019 at 12:43 pm
如果觉得我的文章对你有用,请随意赞赏

Leave a Comment