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 (寒光博客)”原创,转载请保留文章出处。
本文地址:https://dxoca.cn/java/303.html 百度已收录
版权说明:若无注明,本文皆为“Dxoca's blog (寒光博客)”原创,转载请保留文章出处。