/*
两种排序的方法,一种是sort,底层是快排,还有一种是
functional里的函数,只需要在sort里加上第三个参数
具体如下
*/
#include <algorithm>//里边有sort
#include <functional>//里边有greater<>和less<>
#include <iostream>
using namespace std;
//定义元素之间的 小于 a < b 关系
//sort函数默认的是从小到大的排序
//这里是定义从大到小的排序,重载
bool cmp(int a,int b){
return a > b;
}
int main()
{
int a[10] = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3};
//排序,默认顺序是从小到大
sort(a, a + 5);//[a,a+5)
for (int i = 0; i < 10;i++)
cout << a[i] <<' ';//" "比endl要效率高一些
cout << "\n";
//从大到小排序
// sort(a,a+10,cmp);
// sort(a,a+10,less<int>());//less<>小于关系的函数
sort(a, a + 10, greater<int>());//greater<>大于关系的函数
for (int i = 0; i < 10;i++)
cout << a[i] <<' ';
cout << "\n";
return 0;
}
c++排序
最新推荐文章于 2024-05-19 22:20:48 发布