algorithm用法
五、#include < algorithm >
下面介绍的几个函数都作用在序列上,接收两个迭代器(或指针)l,r,对下标处于**前闭后开区间【l,r)**中的元素执行一系列操作。
sort() 快速排序
int n = 3; int a[3] = {3,2,1}; //对[0, n)区间进行排序 sort(a, a + n);
可以在第三个参数传入定义大小比较的函数,或者重载“小于号“运算符。
#include <algorithm> #include <cstdio> #include <cstring> using namespace std; struct node {int d;node(int dd) {d = dd;}node(){} } a[100];bool cmp(node a, node b) {//<符号是按照d小的排在前面//retunr a.d > b.d是按照d大的排在前面 return a.d < b.d; } int main() {a[0] = node(3);a[1] = node(2);a[2] = node(1);//【0, 3) sort(a, a + 3, cmp);for (int i = 0; i < 3; i++) {printf("%d ", a[i].d);}printf("\n");return 0; }
reverse():翻转
翻转一个vector: reverse(a.begin(), a.end());
翻转一个数组: reverse(a, a + n) 下标是【0, n- 1】lower_bound 二分查找
lower_bound的第三个参数传入一个元素,在2个迭代器(或指针)指定的部分上执行二分查找,返回第一个大于等于x的元素的位置的迭代器。int a[5] = {0,1,2,3,4}; //返回第一个大于等于2的元素的下标 int i = lower_bound(a, a + 5, 2) - a;
upper_bound
用法与lower_bound大致相同,唯一的区别是查找第一个大于x的元素。当然2个指定的部分必须提前排好序。
algorithm用法相关推荐
- algorithm用法详解
标准库模板: Algorithms 头文件<algorithm>定义了一系列特别设计用于元素范围的函数. 范围是可以通过迭代器或指针访问的任何对象序列,例如数组或某些STL 容器的实例.但 ...
- c++stl应用入门
在这篇中,我会讲几个简单易懂且比较常用的stl函数,这些函数在noip系列考试中往往被允许使用(既然让用我们自然不用手码了...) (末尾有惊喜!) 1.sort 绝大部分刚入门的oier第一个接触的 ...
- P1008 [NOIP1998 普及组] 三连击 题解
P1008 [NOIP1998 普及组] 三连击 题解 题目背景 本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序. 题目描述 将 1, 2, - , 9 ...
- DevExpress Winform 常用控件
前言 DevExpress 控件的功能比较强大,是全球知名控件开发公司,对于开发 B/S 或 C/S 都非常出色,可以实现很炫且功能强大的效果. DevExpress Winform 常用控件是本人在 ...
- boost::histogram::algorithm::project用法的测试程序
boost::histogram::algorithm::project用法的测试程序 实现功能 C++实现代码 实现功能 boost::histogram::algorithm::project用法 ...
- boost::histogram::algorithm::reduce用法的测试程序
boost::histogram::algorithm::reduce用法的测试程序 实现功能 C++实现代码 实现功能 boost::histogram::algorithm::reduce用法的测 ...
- algorithm java_Java KeyPairGenerator getAlgorithm()用法及代码示例
java.security.KeyPairGenerator类的getAlgorithm()方法用于返回此 key 对生成器的算法的标准名称.有关标准算法名称的信息,请参见Java密码体系结构标准算法 ...
- c语言algorithm头文件,C++ algorithm头文件函数的基本用法
algorithm /*algorithm头文件下的常用函数*/ /* 使用algorithm头文件,需要在头文件下加一行using namespace std;" */ //常用函数max ...
- algorithm头文件用法
algorithm下 //常用函数max(), //min() // abs()绝对值函数 //swap()交换函数 //reverse()反转函数,在给定一定范围内进行反转 //fill()在某一范 ...
最新文章
- xshell突然连接不上虚拟机解决办法
- maven找到mysql 连接池_在Tomcat6.0+MySQL5.0环境下配置和使用数据库连接池
- [C++STL]C++实现string容器
- 档案信息化管理的最好解决方案
- zset中的score_Redis 在项目中合理使用经验总结
- Centos 监控进程,并自动重启
- 使用Linux的alternatives命令替换选择软件的版本
- 解决VS在高DPI下设计出的Winform程序界面变形问题
- TensorFlow:交叉熵损失函数
- 16. Magento模板及布局文件中引用Static Block的方法
- linux tc 对本机网卡限速
- Mac版Python3安装/升级
- ezcad旋转轴标刻参数_激光打标机软件ezcad中菜单下的旋转角度标刻功能介绍及其操作设置...
- linux系统软件包下载
- Google登陆集成笔记-含坑
- 手把手搭建VuePress文档
- 自己动手做个智能小车(2)
- 香港科大【526清水湾思享会@杭州】暨香港科大EMBA第四届校友会【浙江分会】启动仪式成功举行...
- 动态RAM和静态RAM的区别(浅学)
- w ndows无法连接到System,Windows无法连接到System Event Notification Service 服务
热门文章
- 网工知识角|例行维护检查华为设备,这10个常用命令你必须掌握
- React组件Component
- Docker安装教程(超详细)
- Python订票系统这才是看电影选座的正确方法,原来我们都上当了
- 业界最全,阿里云混合云灾备服务上线!
- 宝塔面板网站一打开cpu百分百_解决宝塔面板CPU占满100%,负载100%网站缓慢等问题...
- 2020-10-7 CCNA学习笔记
- 嵌入式LINUX系统程序开发
- debian安装tools
- php+时间戳+星座,php 根据日期显示星座的简单示例