关于sort函数的几种用法
来源:互联网 发布:美国财经数据 编辑:程序博客网 时间:2024/05/16 06:39
随着练习代码的习题数量的增加,意识到了自己和系统学习c++的人之间还有很大的差距。今天学习的是sort函数,它是STL中可以直接调用的排序类函数,以下是我从另一篇博客中摘取的,自己用起来简单顺手的部分。
1.要使用sort函数只需用#include <algorithm> 即可使用,语法描述为:
sort(begin,end),表示一个范围,例如:
int _tmain(int argc, _TCHAR* argv[])
{
int a[20]={2,4,1,23,5,76,0,43,24,65},i;
for(i=0;i<20;i++)
cout<<a[i]<<endl;
sort(a,a+20);
for(i=0;i<20;i++)
cout<<a[i]<<endl;
return 0;
}
输出结果将是把数组a按升序排序。
2.sort中增加一个参数,可升序可降序。
1)自己编写compare函数:
bool compare(int a,int b)
{
return a<b; //升序排列,如果改为return a>b,则为降序
}
2)接着调用三个参数的sort:sort(begin,end,compare)就成了。对于list容器,这个方法也适用,把compare作为sort的参数就可以了,即:sort(compare).
int _tmain(int argc, _TCHAR* argv[])
{
int a[20]={2,4,1,23,5,76,0,43,24,65},i;
for(i=0;i<20;i++)
cout<<a[i]<<endl;
sort(a,a+20,compare);
for(i=0;i<20;i++)
cout<<a[i]<<endl;
return 0;
}
- 升序:sort(begin,end,less<data-type>());
- 降序:sort(begin,end,greater<data-type>()).
int _tmain(int argc, _TCHAR* argv[])
{
int a[20]={2,4,1,23,5,76,0,43,24,65},i;
for(i=0;i<20;i++)
cout<<a[i]<<endl;
sort(a,a+20,greater<int>());
for(i=0;i<20;i++)
cout<<a[i]<<endl;
return 0;
}
以上三种方式对于我目前的水平来说已足够,以后会更加深入的学习。
- 关于sort函数的几种用法
- 关于sort函数的几种用法
- 关于java中Arrays.sort()的几种用法
- Sort 排序的几种用法
- sort函数的用法
- sort函数的用法
- Sort函数的用法
- sort函数的用法
- sort函数的用法
- sort函数的用法
- Sort函数的用法
- sort函数的用法
- sort函数的用法
- sort函数的用法
- sort函数的用法
- sort 函数的用法
- sort函数的用法
- 关于python中,map,reduce,filter,sort函数的用法:
- DBoW2 回环检测/重定位 算法解析
- 接口测试用例模板
- php中try catch捕获异常实例详解
- Leetcode 515 Find Largest Value in Each Tree Row
- 关于命令行解释器shell的管道的理解
- 关于sort函数的几种用法
- kafka helloworld
- maven简单项目转换Web项目,在properties里没有出现Project Facets
- httpsession 内容整理
- java 缓存 ConcurrentHashMap 单例 简单示例
- linux redis的安装 与使用
- 5.JavaScript深入之作用域链
- java多线程实现方式
- Android Studio 打包、生成jks密钥、签名Apk、多渠道打包