}得到的为:1,2,3,4,5,6,7,8,9,10; greater也是想定义的顺序跟优先队列出来的恰恰相反 由上推出: 当为非结构体时(不需要重载的基本类型) less是大根堆,greater是小根堆,而优先队列默认的是大根堆。 自定义比较结构体 struct cmp{ bool operator ()(const data1 &a, const data1 &b) { return a.n...
参考:priority_queue在结构体中的使用_priority_queue 结构体-CSDN博客
优先队列里面默认是从大到小排序,这里的>符号将排序改成从小到大排序 #include<bits/stdc++.h>usingnamespacestd;structnode{intage; string name;booloperator< (constnode &t)const{//将堆里面的内容按照,年龄从小到大排序returnage>t.age; } }p[100];intmain(){intn; cin>>n; priority_queue<node> h...