sort函数是C++的一种排序方法,包含在头文件为#include的C++标准库中
sort函数使用模板: sort(start,end,排序方法)
下面介绍sort函数的三种使用方式
一.sort函数没有第三个参数,此时默认由小到大排序
#include<iostream>
#include<algorithm>
using namespace std;
int main() {
int a[5] = { 4,3,2,1,0 };
for (int i = 0; i < 5; i++) {
cout << a[i] << " ";
}
cout << endl;
sort(a, a + 5);
for (int i = 0; i < 5; i++) {
cout << a[i] << " ";
}
return 0;
}
二.在第三个参数中加入比较函数cmp()
cmp()的返回值为a<b, 排序结果由小到大
cmp()的返回值为a>b, 排序结果由大到小
#include<iostream>
#include<algorithm>
using namespace std;
bool cmp(int a, int b) {
return a < b;
}
int main() {
int a[5] = { 4,3,2,1,0 };
for (int i = 0; i < 5; i++) {
cout << a[i] << " ";
}
cout << endl;
sort(a, a + 5,cmp);
for (int i = 0; i < 5; i++) {
cout << a[i] << " ";
}
return 0;
}
三.用less greater语句排序
less<数据类型>()//从小到大排序
greater<数据类型>()//从大到小排序
sort函数还可对字符进行排序,在此举例展示
#include<iostream>
#include<algorithm>
using namespace std;
int main() {
char a[5] = "abcd";
for (int i = 0; i < 5; i++) {
cout << a[i] << " ";
}
cout << endl;
sort(a, a + 5,greater<char>());
for (int i = 0; i < 5; i++) {
cout << a[i] << " ";
}
return 0;
}