C++ 中sort函数的用法
来源:互联网 发布:2017淘宝首页怎么装修 编辑:程序博客网 时间:2024/06/05 20:54
使用此函数只需用#include <algorithm> sort即可使用,语法描述为:
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);//一定要注意这里是a+20,而不是a+19
for(i=0;i<20;i++)
cout<<a[i]<<endl;
return 0;
}
输出结果将是把数组a按升序排序,说到这里可能就有人会问怎么样用它降序排列呢?这就是下一个讨论的内容.
一种是自己编写一个比较函数来实现,接着调用三个参数的sort:sort(begin,end,compare)就成了。对于list容器,这个方法也适用,把compare作为sort的参数就可以了,即:sort(compare).
1)自己编写compare函数:
bool compare(int a,int b)
{
return a<b; //升序排列,如果改为return a>b,则为降序
}
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;
}
在list中有自己的sort函数,直接写好自定义的compare函数,把conpare当为参数即可。
如:按照字符串的大小排序
bool compare(string a, string b)
{
return a < b;
}
void main00()
{
list<string> l;
l.push_back("2017_12_12_0");
l.push_back("2017_12_12_5");
l.push_back("2017_12_12_3");
l.push_back("2017_12_12_9");
l.push_back("2017_12_12_1");
l.sort(compare);
list<string>::iterator it = l.begin();
while (it != l.end())
{
cout << *it << " ";
it++;
}
cout << endl;
- C++sort函数的用法
- C++sort函数的用法
- C++sort函数的用法
- C++sort函数的用法
- C++sort函数的用法
- C++sort函数的用法
- C++sort函数的用法
- C++sort()函数的用法
- C++sort函数的用法
- C++sort函数的用法
- C++sort函数的用法
- C++sort()函数的用法
- C++sort()函数的用法
- C++sort函数的用法
- c++sort函数的用法
- C++:STL中sort()函数的用法总结
- 浅析C/C++中sort函数的用法
- 浅析C/C++中sort函数的用法
- BZOJ 4990: [Usaco2017 Feb]Why Did the Cow Cross the Road II 树状数组优化LCS
- 每天一个linux命令(45):free 命令
- 浅谈 equals和==
- 面向对象多态
- UVALive
- C++ 中sort函数的用法
- 3400-数据结构实验之排序三:bucket sort
- IT职场套路深--晚上有空吗=加班吧
- EOS.IO技术白皮书
- javascript面向对象——constructor属性(构造函数属性)
- RTP解包
- 每天一个linux命令(46):vmstat命令
- 正则表达式
- maven很垃圾,不信你说服我。我叫你一声大哥。