Tips:
- noilinux-1.4.1(g++4.8.4)下
sizeof(long double a)
为12,Windows(g++4.9.2)和Deepin(g++8.3.0)下都为16 sort
默认从小到大排序,默认使用operator<
为比较符priority_queue
,默认大根堆,小根堆为priority_queue<T,vector<T>,greater<T> >
(形象记忆:先小的,然后greater更大的,所以是小根堆)
a. 大根堆用的是bool operator<(const T a,const T b)
b. 小根堆用的是bool operator>(const T a,const T b)
即反着来就可以,用结构体的时候选默认大根堆,重载运算符里写
b,a是正确的顺序则返回true
,否则(即a,b是正确的顺序)返回false
(附实例图)
实例3.