C++ sort()
时间: 2023-11-10 20:48:01 浏览: 56
C++中的sort()函数是用来对数组或容器中的元素进行排序的函数。它需要引入<algorithm>头文件来使用。sort()函数有多种使用方法,其中最基本的方法是sort(begin, end, cmp),其中begin表示待排序数组的第一个元素的指针,end表示待排序数组的最后一个元素的下一个位置的指针,cmp参数是排序准则,用来决定元素的排序顺序。如果不指定cmp参数,默认是按照从小到大的顺序排序。如果想要按照其他顺序排序,可以自定义一个bool类型的函数作为cmp参数传入。
下面是一个使用sort()函数对整型数组进行排序的例子:
#include<iostream>
#include<algorithm>
using namespace std;
bool cmp(int x, int y){
return x % 10 > y % 10;
}
int main(){
int num[10] = {65, 59, 96, 13, 21, 80, 72, 33, 44, 99};
sort(num, num + 10, cmp);
for(int i = 0; i < 10; i++){
cout << num[i] << " ";
}
//输出结果:59 99 96 65 44 13 33 72 21 80
return 0;
}
在这个例子中,我们定义了一个名为cmp的函数,用来指定排序的准则。这个cmp函数将两个元素取模后的余数进行比较,如果第一个元素的余数大于第二个元素的余数,则返回true,表示第一个元素应该排在第二个元素之前。然后我们将这个cmp函数作为参数传入sort()函数中,就可以实现按照余数从大到小的顺序对整型数组进行排序。
除了对整型数组进行排序,sort()函数也可以用来对其他类型的数组或容器进行排序,只需要根据需要自定义cmp函数即可。如果不需要自定义排序准则,可以直接使用默认的排序方式。总的来说,sort()函数是一个非常方便的函数,可以在C++中快速实现排序功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
阅读全文