java priorityqueue
java priorityqueue是怎样的呢?下面就让我们一起来了解一下吧:
java中的priorityqueue一般也就是代表优先队列。
这是属于Queue接口的实现,能够对其中元素进行排序,还能放基本数据类型的包装类或是自定义的类,而对于基本数据类型的包装类,优先队列中元素一般是默认排列顺序为升序排列的。
参考范例:
队列保存的是基本数据类型的包装类,具体代码为:
//自定义比较器,降序排列
static Comparator<Integer> cmp = new Comparator<Integer>() {
public int compare(Integer e1, Integer e2) {
return e2 - e1;
}
};
public static void main(String[] args) {
//不用比较器,默认升序排列
Queue<Integer> q = new PriorityQueue<>();
q.add(3);
q.add(2);
q.add(4);
while(!q.isEmpty())
{
System.out.print(q.poll()+" ");
}
/**
* 输出结果
* 2 3 4
*/
//使用自定义比较器,降序排列
Queue<Integer> qq = new PriorityQueue<>(cmp);
qq.add(3);
qq.add(2);
qq.add(4);
while(!qq.isEmpty())
{
System.out.print(qq.poll()+" ");
}
/**
* 输出结果
* 4 3 2
*/
}
队列保存的是自定义类,具体代码为:
//矩形类
class Node{
public Node(int chang,int kuan)
{
this.chang=chang;
this.kuan=kuan;
}
int chang;
int kuan;
}
public class Test {
//自定义比较类,先比较长,长升序排列,若长相等再比较宽,宽降序
static Comparator<Node> cNode=new Comparator<Node>() {
public int compare(Node o1, Node o2) {
if(o1.chang!=o2.chang)
return o1.chang-o2.chang;
else
return o2.kuan-o1.kuan;
}
};
public static void main(String[] args) {
Queue<Node> q=new PriorityQueue<>(cNode);
Node n1=new Node(1, 2);
Node n2=new Node(2, 5);
Node n3=new Node(2, 3);
Node n4=new Node(1, 2);
q.add(n1);
q.add(n2);
q.add(n3);
Node n;
while(!q.isEmpty())
{
n=q.poll();
System.out.println("长: "+n.chang+" 宽:" +n.kuan);
}
/**
* 输出结果
* 长: 1 宽:2
* 长: 2 宽:5
* 长: 2 宽:3
*/
}
}
-
车没停稳就挂p档对车影响大吗
车没停稳就挂p档对汽车的传动系统会造成非常大的影响,如果长期采用这种方式的话,会对变速箱带来非常大的磨损,严重时会导致变速箱无法使用。如果汽车在行驶的过程中还没有停稳就挂p档,...
问答查看全文>> -
2022愚人节快乐说说大全 愚人节快乐的祝福语
1、信息收到,大事不妙;键盘失灵,命令失效;铃声乱响,主人咆哮;你若苦恼,手机扔掉;看完要笑,财神就到;你若不笑,纯属傻帽!笑了没?2、愚人节不愚人,就是愚人也不能愚弄你,只好...
说说查看全文>> -
春天的好句好段最新大全
1、年中的四季都是风情万种的:春天春暖花开,夏天夏日炎炎,秋天秋高气爽,冬天安静祥和。如果你问我最爱哪个季节,我会毫不犹豫地告诉你:我爱春天。2、春天,那太阳暖洋洋的,它伸出漫...
句子查看全文>> -
卖二手车注意什么猫腻?
卖二手车需要注意的猫腻如下:1、当然二手车市场是买车者最方便的选择,而且也省了一些麻烦,在过户时由车场的伙计替您跑腿,但价格可能会比后几者高些;2、其实,只要您掌握此类二手车新...
问答查看全文>>
推荐
- 1帕萨特雾灯报警怎么回事?306
- 2关于军训的军训感言范文226
- 3奇迹暖暖安卓ios合并到一个账号432
- 4缓冲器的作用?355
- 5秦老太藕粉怎么冲 秦老太藕粉质量怎么样473
- 6关于奉献的优美句子 形容无私奉献的句子246
- 7紫砂壶洗壶养壶之不破坏包浆的洗壶小技巧260
- 8新车要贴年检标志吗?143