1.简单的sort使用

必须加入头文件#include< algorithm >和using namespace std;
使用如下:

sort(首元素地址(必填),尾元素地址的下一个地址(必填),比较函数(选填));

(1)对于整数(double型同理)

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{int a[4]={9,5,12,-1};sort(a,a+3);//仅对3个数排序for(int i=0;i<4;i++)cout<<a[i]<<" "<<endl;sort(a,a+4);//对4个数排序for(int i=0;i<4;i++)cout<<a[i]<<" ";}

输出结果

5 9 12 -1
-1 5 9 12

注意体会尾元素地址的下一个地址

(2)对char型数组排序(默认为字典序)

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{char c[]={'B','D','C','A'};sort(c,c+4);for(int i=0;i<4;i++)cout<<c[i];return 0;
}

输出结果

ABCD

2.实现比较函数cmp

(1)基本数据型数组的排序

由上文可以发现,sort默认按照由小到大排序
若想由大到小,则要使用比较函数cmp
如对char型从大到小排序

#include<iostream>
#include<algorithm>
using namespace std;
bool cmp(char a,char b){return a>b;
}
int main()
{char c[]={'B','D','C','A'};sort(c,c+4,cmp);for(int i=0;i<4;i++)cout<<c[i];return 0;
}
DCBA

(2)结构体数组的排序

示例如下:

#include<iostream>
#include<algorithm>
using namespace std;
struct node{int a,b;
}ssd[10];
bool cmp(node x,node y){return x.a>y.b;//按a值由大到小排列
}
int main()
{ssd[0].a =2;//{2,2}ssd[0].b =1;ssd[1].a =1;//{1,3}ssd[1].b =3;ssd[2].a =3;//{3,5}ssd[2].b =5;sort(ssd,ssd+3,cmp);for(int i=0;i<3;i++)cout<<ssd[i].a<<" "<<ssd[i].b<<endl;return 0;
}

输出结果

3 5
2 2
1 3

algorithm头文件下函数整合

algorithm头文件下的sort()相关推荐

  1. algorithm头文件下的常用函数-学习笔记

    algorithm头文件下的常用函数-学习笔记 max(x,y),min(x,y),abs(x) swap(x,y) reverse(it,it2) next_permutation() fill( ...

  2. algorithm头文件下常用函数

    algorithm头文件下常用函数 1.max(),min(),abs() 应用:max(x,y)和min(x,y)分别返回x和y中的最大值和最小值,且参数必须是两个. abs(x) 返回x的绝对值. ...

  3. algorithm头文件下函数整合

    使用algorithm头文件,在头文件下加一行"using namespace std:"才能正常使用 1.max(x,y).min(x,y).abs(x) 分别返回最大值.最小值 ...

  4. algorithm 头文件下的函数你真的都了解?

    使用 algorithm 头文件,需要在头文件下加一行 "using namespace std;",才能使用. 1.max() ,min(),和abs(); max(x,y)和m ...

  5. C语言—sort函数比较大小的快捷使用--algorithm头文件下

    sort函数 一般情况下要将一组数从的大到小排序或从小到大排序,要定义一个新的函数排序. 而我们也可以直接使用在函数下的sort函数,只需加上头文件: #include<algorithm> ...

  6. algorithm头文件下的常用函数

    目录 max()和min() swap() reverse() next_permutation() fill() sort() lower_bound()和upper_bounnd() max()和 ...

  7. algorithm头文件下的next_permutation()

    next_permutation给出一个序列在全排列中的下一个序列 举例 #include<iostream> #include<algorithm> using namesp ...

  8. algorithm头文件下的常用函数--习题

    目录 问题 A: 求最大最小数 [简单] 问题 B: 全排列(字符串) [简单] 问题 C: 数组逆置 [简单] 问题 A: 求最大最小数 [简单] http://codeup.cn/problem. ...

  9. algorithm头文件下的fill()

    fill()可以把数组或容器中的某一段区间赋予相同的值. 和memset不同,这里可以是数组类型对应范围中的任意值. 示例如下: #include<iostream> #include&l ...

最新文章

  1. 【node】express的www.js文件里面的process.env.PORT
  2. java缓存流速度与硬盘_系统学习 Java IO (九)----缓冲流 BufferedInputStream/BufferedOutputStream...
  3. springboot 入门教程(4)--web开发(spring mvc和Thymeleaf模板,带源码)
  4. python爬取贴吧所有帖子-python 爬虫爬取百度贴吧,获取海量信息
  5. 比较两个ListT是否相同
  6. 最常用的Eclipse快捷键
  7. PHP OPCode缓存:APC详细介绍
  8. C/C++ 线程三种并发方式比较(传统互斥量加锁方式, no lock不加锁的方式, 原子函数方式)
  9. Window入侵排查
  10. 2级c语言题库及答案,计算机二级C语言上机题库含答案解析
  11. scrollTop以及页面回到顶部
  12. libtorrent-bittorrent
  13. 我爱看的书-2021-4-17
  14. 显示一个立方体的斜二测图(用数组存放正方体的各顶点坐标)
  15. java打印设置_java如何设置系统默认打印机
  16. Excel技巧【标记多行数据连续一样的行】【第一个单元格公式适用于所有本列所有行】【按照逗号分列】【快速统计出各个项出现的次数】【冻结窗口】[表格分段选择数据][根据单元格内容引索其他单元格数据指针]
  17. 正大期货:期货交易常用的软件
  18. 迁移学习---TrAdaBoost算法介绍
  19. grep -e 和 grep -E 的区别是什么?
  20. 利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

热门文章

  1. 转载:YUM常用命令介绍
  2. redis使用lua脚本
  3. (二)surging 微服务框架使用系列之surging 的准备工作consul安装(转载 https://www.cnblogs.com/alangur/p/8377977.html)...
  4. 24 反转链表(第3章 高质量的代码-代码的鲁棒性)
  5. MVC4 下DropDownList使用方法
  6. FileUpload上传图片提示 “GDI+中发生一般性错误”
  7. linux设备模型深探
  8. 关于钩子(Hook)的使用
  9. jq使用教程04_高校版教程
  10. ajax 购物车 c#,c#购物车功能实现及收藏功能实现