概述
代码实现:
package csdn.wj.linear;
import csdn.wj.assistant.Node;
import csdn.wj.assistant.Queue;
import csdn.wj.assistant.Queue.QueueEmptyException;
public class Queue02 implements Queue {
private Node front;
private Node rear;
private int size;
public Queue02() {
front = new Node(size);
rear = front;
size = 0;
}
//返回队列的大小
public int getSize() {
return size;
}
//判断队列是否为空
public boolean isEmpty() {
return size==0;
}
//数据元素 e入队
public void enqueue(Object e) {
Node p = new Node((int)e);
rear.next = p;
rear = p;
size++;
}
//队首元素出队
public Object dequeue() throws QueueEmptyException {
if (size<1)
throw new QueueEmptyException("错误:队列为空");
Node p = front.next;
front.next = p.next;
size--;
if (size<1) rear = front; //如果队列为空,rear指向头结点
return p.data;
}
//取队首元素
public Object peek() throws QueueEmptyException {
if (size<1)
throw new QueueEmptyException("错误:队列为空");
return front.next.data;
}
}
最后
以上就是活泼雨为你收集整理的《数据结构》严蔚敏版(java解)——第三章 栈和队列04 链式队列操作的全部内容,希望文章能够帮你解决《数据结构》严蔚敏版(java解)——第三章 栈和队列04 链式队列操作所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复