(c++) 结构体排序:
利用重载运算符operator
1 2 3 4 5 6 7
| struct Range{ int l,r; bool operator < (const Range &t){ return this->r<ranget.r; } }range[N]; sort(range,range+n);
|
1 2 3 4 5 6 7 8 9 10
| struct Range{ int x,y,z; bool operator < (const Range &t){ if(x!=t.x) return x<t.x if(y!=t.y)return y<t.y; return z<t.z; } }range[N]; sort(range,range+n);
|
(java) 类排序
利用list类做容器存储类,再用其类库函数实现排序
1 2 3 4 5 6 7 8 9 10 11 12 13
| public static void main(String[]args){ ArrayList<pii> list=new ArrayList<>(); list.sort((o1,o2)->o1.l-o2.l); list.sort((o1,o2)->o2.r-o1.r); }
static class pii { int l, r; pii(int l, int r) { this.l = l; this.r = r; } }
|