其实C语言里也有qsort排序函数,但相较于C++的sort排序函数更加繁琐,不推荐使用。下面来介绍怎么使用C++里的sort排序函数。

Sort的用法
1.sort函数的使用必须加上头文件#include<algorithm>和using namespace std;

#include<algorithm>
using namespace std;

2.sort使用方式如下
sort(首元素地址,尾元素地址的下一位地址,比较函数cmp);
其中比较函数cmp可填可不填
例如:

int a[5] = { 5,3,6,3,2 };sort(a, a+5,cmp);

注意:
1.为什么sort要的是尾元素的下一位地址
答:你可以理解为这个排序的区间是左闭右开[ )的,如上面代码要对a[5]排序就应该是sort(a,a+5,cmp),区间在[0,5),而不是sort(a,a+4,cmp)。

2.而为什么要有这个比较函数cmp(compare的缩写)?
答:上面说了cmp可填可不填,他不填的时候是系统默认从小到大排序,如果想从大到小必须写一个cmp函数来改变他的排列顺序。

bool cmp(int a, int b)
{return a > b;  //a>b表示从大到小,而如果改成a<b,则表示从小到大
}

完整代码如下

#include<cstdio>
#include<algorithm>
using namespace std;
bool cmp(int a, int b)
{return a > b;   //a>b表示从大到小,而如果改成a<b,则表示从小到大
}
int main()
{int a[5] = { 5,3,6,3,2 };sort(a, a+5,cmp);   //sort函数的使用for (int i = 0; i < 5; i++){printf("%d", a[i]);      }
}

另外
1.这个sort函数不仅可以用int类型的比较,还可以对double,char ,string进行排序,其中对char和string默认以字典序的方式排序。

2.字典排序(lexicographical order)是一种对于随机变量形成序列的排序方法。其方法是,按照字母顺序,或者数字小大顺序,由小到大的形成序列。

最后
作品皆为原创,认为有用的不妨点个赞!!!

c++自带的排序函数sort相关推荐

  1. C++ 排序函数 sort(),qsort()的用法

    想起来自己天天排序排序,冒泡啊,二分查找啊,结果在STL中就自带了排序函数sort,qsort,总算把自己解脱了~ 所以自己总结了一下,首先看sort函数见下表: 函数名 功能描述 sort 对给定区 ...

  2. R语言数据排序函数sort, order rank实战

    R语言数据排序函数sort, order & rank实战 目录 R语言数据排序函数sort, order & rank实战 #sort vs. order vs. rank函数基础 ...

  3. C/C++自带的排序函数

    1.C标准库函数qsort() qsort函数包含在#include<stdlib.h>中 函数声明: void qsort( void*base, size_t nitems, size ...

  4. python 排序函数 sort sorted 简介

    sort() 是Python列表的一个内置的排序方法,list.sort() 方法排序时直接修改原列表,返回None: sort() 是Python内置的一个排序函数,它会从一个迭代器返回一个排好序的 ...

  5. 排序函数(sort()、sorted()、argsort()函数)

    python的内建排序函数有 sort.sorted两个. 1.基础的序列升序排序直接调用sorted()方法即可 1 ls = list([5, 2, 3, 1, 4]) 2 new_ls = so ...

  6. python 数组排序sort_Python之排序函数sort() 和 sorted()

    sort() 是Python列表的一个内置的排序方法,list.sort() 方法排序时直接修改原列表,返回None: sort() 是Python内置的一个排序函数,它会从一个迭代器返回一个排好序的 ...

  7. 如何使用JS的排序函数sort()

    Array对象中的sort()方法是一个很高效的排序方法,用于对数组进行排序.其基本用法有两种: 1.不带参数 数组名.sort(); 这种用法只适用于对英文字符串组成的数组按升序排序,结果在原数组中 ...

  8. 排序函数 sort()、sorted()、argsort()函数

    sort()函数 python的内建排序函数有 sort.sorted两个.而sort ()可以直接对列表进行排序 用法:list.sort(func=None, key=None, reverse= ...

  9. 指针:调用自定义排序函数sort,对输入的n个数进行从小到大输出。

    Description 自定义函数sort(int *p, int n),功能是对n个数排序.在main函数中,调用它,对输入的任意个数排序. Input 多组测试数据,先输入n(n<100), ...

最新文章

  1. 可操作性强!Python实现一个电影订票系统!
  2. 摩拜单车正式进军日本,积极拓展海外市场
  3. 正则表达式中空格的危害
  4. 成功解决AttributeError: module ‘tensorflow‘ has no attribute ‘get_variable‘
  5. Mysql的垂直分表-新建
  6. 列表和range、元组
  7. 那些年,我写过的设置Windows系统变量的vbs脚本
  8. c语言写报告抽象数据类型,数据结构(C语言版)第一章 抽象数据类型的表示与实现...
  9. dll注入的一种方式
  10. Tomcat的部署+第一个Servlet
  11. 微信公众号、微信小程序、 微信扫码支付、微信委托代扣模式等相关的开发文档
  12. SAP内部培训效果考察表存档
  13. 如何迅速分析出系统CPU的瓶颈在哪里
  14. 怎么在图片上直接编辑文字?建议收藏这些编辑方法
  15. 天池案例-贷款违约预测(lgb)
  16. 六种礼仪帮助你赢得面试
  17. 数据库表的软硬关联_Jimmy的关系型数据库设计心得 第一版
  18. instagram图片大小_如何上传最好看的Instagram图片
  19. linux的系统监视器图片_替代Windows还有多远?国产统一操作系统UOS上手体验
  20. ContentType 清单大全

热门文章

  1. FreeRTOS学习五(信号量)
  2. java多人聊天室的实验任务_Java基于中介者模式实现多人聊天室功能示例
  3. joda-time的使用
  4. 胶原蛋白的主要功效,胶原蛋白怎么补最有效
  5. linux 6 服务搭建,Linux CentOS6.8搭建sftp服务
  6. Java学习笔记 实现阿拉伯数字(一亿以内)转换为中文繁体数字
  7. awd-php,awd平台搭建
  8. 多人联机射击游戏中的设计模式应用(二)
  9. 类之间的关系:依赖、泛化、实现、关联、聚合、组合
  10. 利用银行股的低估,买入高盛