sort函数包含在头文件为#include<algorithm>的c++标准库中,使用sort函数之前记得调用algorithm头文件。
sort函数有三个参数:
(1)第一个是要排序的数组的起始地址;
(2)第二个是结束的地址(最后一位要排序的地址);
(3)第三个参数是排序的方法,可以是从大到小也可以是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。
sort函数使用模板:
sort(start, end, 排序方法)
下面就具体使用sort函数结合对数组排序进行说明:
例一:
#include<iostream>
#include<algorithm> //调用sort函数
using namespace std;
bool compare(int a, int b){ //从大到小排序
return a > b;
}
int main(){
int a[10] = {9,6,3,8,5,2,7,4,1,0};
for(int i = 0; i < 10; i++)
sort(a, a+10, compare); //在这里就不需要对compare函数传入参数了,这是规则
for(int i = 0; i < 10; i++)
cout << a[i] << " ";
cout << endl;
return 0;
}
例二:来自剑指offer-把数组排成最小的数
题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
代码实现如下: