STL中就自带了排序函数sortsort 对给定区间所有元素进行排序.
使用#include sort即可使用,语法描述为:
sort(begin,end,cmp),表示一个范围。
其中cmp是自己指定的比较规则。
函数名 功能描述
sort 对给定区间所有元素进行排序
stable_sort 对给定区间所有元素进行稳定排序
partial_sort 对给定区间所有元素部分排序
partial_sort_copy 对给定区间复制并排序
nth_element 找出给定区间的某个位置对应的元素
is_sorted 判断一个区间是否已经排好序
partition 使得符合某个条件的元素放在前面
stable_partition 相对稳定的使得符合某个条件的元素放在前面
#include<bits/stdc++.h>
using namespace std;
class Action{
public:
int num;
int num2;
};
vector<Action> actions;
/*
typedef struct Action{
public:
int num;
int num2;
}Action;
*/
int cmp(Action ac1, Action ac2){
if(ac1.num<ac2.num)
return 1;
else if(ac1.num==ac2.num&&ac1.num2<ac2.num2)
return 1;
else
return 0;
}
int main()
{
int n;
int num,num2;
cin>>n;
for(int i=0;i<n;i++){
Action temp;
cin>>num>>num2;
temp.num=num;
temp.num2=num2;
actions.push_back(temp);
}
sort(actions.begin(),actions.end(),cmp);
cout<<endl;
for(int i=0;i<n;i++){
cout<<actions[i].num<<" "<<actions[i].num2<<endl;
}
}