C++中sort排序

来源:互联网 发布:合同登记软件 编辑:程序博客网 时间:2024/06/06 01:18

        STL中就自带了排序函数sort,sort 对给定区间所有元素进行排序 要使用此函数只需用#include <algorithm> 即可使用,如下:

        sort(begin,end),表示一个范围

代码如下:

#include <algorithm>int main(){ int a[20]={1,2,3,4,5,6,7,8,9}; int 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按升序排序.

如何进行降序排序?如下:

可以自己编写一个比较函数来实现,接着调用三个参数的sort:sort(begin,end,compare)就成了。对于list容器,这个方法也适用,把compare作为sort的参数就可以了,即:sort(compare).

bool compare(int a,int b){  return a>b; //降序排列,如果改为return a<b,则为升序}#include <algorithm>int main(){  int a[20]={1,2,3,4,5,6,7,8,9};  int 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;}











原创粉丝点击