优先级队列是数据元素按优先级大小顺序排列,优先级高的总是排在队首。
Node类在前面文章已经定义
下面定义优先队列中结点的data类
package practice1;
public class priorityqdata {
private Object elem; //结点的值
private int priority; //结点的优先级
public priorityqdata(Object elem,int priority){ //构造函数
this.elem=elem;
this.priority=priority;
}
public Object getelem(){
return elem;
}
public int getpriority(){
return priority;
}
public void setelem(Object elem){
this.elem=elem;
}
public void setpriority(int priority){
this.priority=priority;
}
}
优先级队列增删改查的实现及测试样例
package practice1;
public class priorityqueue {
private Node front,rear; //对头,队