队列
队列(Queue)与栈一样,是一种线性存储结构,它具有如下特点:
(1)队列中的数据元素遵循“先进先出”(First In First Out)的原则,简称FIFO结构;
(2)在队尾添加元素,在队头删除元素。
优先队列
1.可进行升降序的排序的队列排序:
升序:priority—queue<int,vector,greater >q
降序:priority—queue<int,vector,less >q
2.利用结构体自定义优先级顺序
利用operator进行重载运算符来进行定义结构体内部优先级顺序。
一.struct cmp1{ bool operator()(int x,int y) { return x>y;//小的优先级高 ,从小到大排 } };
二.struct node{ int x,y; friend bool operator<(node a,node b)-->**这是运用了友元重载** { return a.x>b.x;//按x从小到大排 ,小的优先级高 }
acm真题:
Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%lld & %llu
Submit
Status
Description
我们的小伙伴Bingo真的很调皮,他在上课的路上看到树上有个鸟窝,他就想去把他捅下来,但是鸟窝很高他够不到,于是他就到处找木棍,想把这些木棍接在一起,然后去捅鸟窝。他一共找了N跟木棍 (1 ≤ N ≤ 20,000),每根木棍的长度为 Li (1 ≤ Li ≤ 50,000) 。现在他要把

这篇博客介绍了如何利用优先队列数据结构解决ACM竞赛中的一道题目,该题目要求用木棍连接起来并最小化购买连接材料的费用。博主提供了两种C++实现方法,一种是直接使用`priority_queue`,另一种是通过自定义结构体和友元函数重载`<`操作符。通过示例输入和输出展示了算法的正确性。
最低0.47元/天 解锁文章
466

被折叠的 条评论
为什么被折叠?



