C++<algorithm>能用到的几个内置函数

【C++】#include <algorithm> 的几个常用函数 STL(Standard Template Library,标准模板库),在C++标准中,STL被组织为下面的13个头文件:<algorithm>、<deque>、<functional>、<iterator>、<array>、<vector>、<list>、<forward_list>、<map... 阅读详情
  1. #include <iostream>  
  2. #include <cstdio>  
  3. #include <algorithm>  
  4. using namespace std;  
  5. void print(int &elem){  //有无&均可   
  6.     cout << elem << " ";  
  7. }  
  8. //qsprt必须用这种格式定义比较函数,像bj定义qsort传入参数会出错  
  9. // *和(int *)是同一优先级运算符,但结合方向是从右向左  
  10. int cmp(const void *a, const void *b){   
  11.     return *(int *)a - *(int *)b;  
  12. }  
  13. int bj(int a, int b){   
  14.     return a > b;  
  15. }  
  16. int main(){  
  17.     int a[] = {0, 3, 9, 1, 4, 8, 5, 2, 6, 7};  
  18.       
  19.     //algorithm头文件for_each( , , )函数用法  
  20.     for_each(a, a+10, print);  
  21.     cout << endl;  
  22.       
  23.     //快排模板函数,数组下标从0开始,即排序下标为0-9的元素  
  24.     qsort(a, 10, sizeof(a[0]), cmp);  
  25.     for_each(a, a+10, print);  
  26.     cout << endl;  
  27.       
  28.     //algorithm中的swap函数  
  29.     char x = 'X', y = 'Y';  
  30.     swap(x, y);  
  31.     printf("x = %c, y = %c\n", x, y);  
  32.       
  33.     char str[] = "abcdefgh";  
  34.     //algorithm中的反转函数  
  35.     reverse(str+2,str+7);   //前闭后开   
  36.     cout << str << endl;  
  37.   
  38.   
  39.     int aa[] = {0, 3, 9, 1, 4, 8, 5, 2, 6, 7};  
  40.     for_each(aa, aa+10, print);  
  41.     cout << endl;  
  42.     //qsort,sort时间复杂度都是O(n*log(n)),但实际中sort速度一般比qsort快!!  
  43.     // sort(aa, aa+10);  
  44.     //不传入第三个参数默认sort为升序排序  
  45.     sort(aa, aa+10, bj);  
  46.     //传入参数从大到小排序,且sort第三个参数不能用cmp函数  
  47.     for_each(aa, aa+10, print);  
  48.       
  49.       
  50.     cout << endl << max(66,88) << endl << min(66,88) << endl;  
  51.     //max和min函数  
  52.       
  53.       
  54.     //二路归并,头文件algorithm  
  55.     int ak[] = {1, 9, 5, 4, 7};  
  56.     int ka[] = {3, 6, 2, 8, 0};  
  57.     int kk[15];  
  58.     sort(ak, ak+5);  
  59.     sort(ka, ka+5);  
  60.     merge(ak, ak+5, ka, ka+5, &kk[1]);  
  61.       
  62.     for_each(ak, ak+5, print);  
  63.     cout << endl;  
  64.     for_each(ka, ka+5, print);  
  65.     cout << endl;  
  66.     for_each(kk+1, kk+11, print);  
  67.     cout << endl;  
  68.     return 0;  
  69. }  

C++ 11 特性:<algorithm>中的算法 algorithm头文件中算法介绍 阅读详情

相关推荐

直流有刷电机控制 - 认识电机(一)

电机控制学习

u011030644的博客 917

8.定义算法中的函数

命令来定义算法中的函数。这个命令用于指定函数的名称和参数列表。命令定义了一个名为 FunctionName的函数,该函数接受两个参数。您可以根据需要定义更复杂的函数,以满足您的算法需求。宏包的文档提供了更多关于函数定义的详细信息和选项。在算法的主体部分,我们调用了定义的函数。命令定义了函数的结构,包括。中定义和使用一个简单的函数。在上述示例中,我们首先使用。这个示例演示了如何在。

其木王·王子的博客 3143

一种四通道高精度IEPE加速度传感器控制器设计稿

一种四通道高精度IEPE加速度传感器控制器设计稿,颇具参考价值。

boyondmcu的博客 3851

c++内置函数

库函数 C语言提供了很多编写好的函数,供用户在编程时使用,这些函数被称为库函数,当然C++语言也可以使用。 1、与字符相关的函数 下面是一些关于字符使用的函数: 函数名 格式 功能说明 实例 输入单个字符 getchar() 输入当个字符 c=getchar(); 输出单个字符 putchar() 输出当个字符 c=‘a’putchar( c ); 判断是否为小写字母函数 islower( x ) 判断x是否为小写字母 islower(‘a’)==true 判断是否为大写字母函数

weixin_55577641的博客 2279

告别底噪和发热:TPA3255的PCB布局与散热设计保姆级教程(附嘉立创EDA文件)

本文详细解析TPA3255 Class D音频功放的PCB布局与散热设计,提供从电源系统分层架构到热管理系统的全流程优化方案。通过实战案例展示如何消除底噪、降低发热,并附嘉立创EDA文件,助力工程师快速设计高性能音频功放。

weixin_29208077的博客 376

直流电动机的建模仿真(1)他励,串励和并励电动机建模仿真

本文根据不同励磁方式的直流电动机的接线原理图,建立了相应的数学模型,然后根据与数学模型对应的等效电路以及模拟机械运动方程的等效电路,用Matlab/simulink中的SpecializedPower system库中的电路元件,建立了他励,并励和串励直流电动机的全等效电路仿真模型,经过与Matlab自带的直流电动机仿真模型比较以及仿真实例验证,所建立的仿真模型时完全正确的。

weixin_45670943的博客 7516

C++ 内置函数

C++ 内置函数

SpriCoder的博客 1591

使用mid360运行lio-livox对比fast-lio2

msg_type为激光雷达发出的数据格式,有livox自定义数据类型格式CustomMsg和ros标准的PointCloud2格式,因此首先需要确定激光雷达端配置的是哪种格式。可以从激光雷达的ros驱动中看到驱动端有三种格式可以选,驱动端的数字2对应lio-livox中的1,驱动端的0对应lio-livox的格式0。如果使用的是Ubuntu18.04编译完成后运行直接成功,如果使用20.04运行会报错,需要修改以下源代码。针对livox-mid360 运行lio-livox的一些问题。

z1872385的博客 1227

C++常用的一些内置函数

C++常用的内置函数

aNotBadx的博客 820

【CANdelaStudio编辑CDD】-1.2-给$10服务SessionControl创建一个新Session会话并修改Session state machine会话状态机(UDS诊断)

前一篇:【UDS诊断描述文件CDD】-1.1-ISO_14229中$10服务理论部分https://blog.youkuaiyun.com/qfmzhu/article/details/120375515案例背景: 在CDD中如何给$10服务创建一个新的Session会话; 在CDD中如何给$10服务修改Session state machine会话状态机。 目录 1 查看$10服务中已有的Session会话​ 2 查看$10服务中已有的Session state machine会话状态机 3 在$10...

「汽车电子助手」的博客 6074

SOME/IP协议详解「1.1·面向服务与面向信号」

面向信号和面向服务的区别,和举例子

雪云飞星的博客 5654

盘点C++几个自带的函数

单击此处查看C++自带函数

Iamsupercoder的博客 710

YOLOv11改进策略【卷积层】| ICCV-2023 引入Dynamic Snake Convolution动态蛇形卷积,改进C3k2

基于拓扑几何约束的动态蛇卷积用于管状结构分割DSConv(Dynamic Snake Convolution,动态蛇形卷积)模块的设计主要是为了更好地处理管状结构的分割任务,解决传统卷积在处理细管状结构时的不足。

Limiiiing的博客 1627

c++ algorithm中常用的几个内置函数

#include #include #include using namespace std; void print(int &elem){ cout } //qsprt必须用这种格式定义比较函数,像bj定义qsort传入参数会出错 // *和(int *)是同一优先级运算符,但结合方向是从右向左 int cmp(const void *a, const void

yo_bc的博客 3374

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

C++ #include <algorithm>

标准模板库:算法 头文件<algorithm>定义了一组专门设计用于元素范围的函数集合。 范围是可以通过迭代器或指针访问的任何对象序列,例如数组或某些STL容器的实例。 但是请注意,算法通过迭代器直接对值进行操作,而不以任何方式影响任何可能容器的结构(它从不影响容器的大小或存储分配)。 参考手册:cplusplus.com 具体包括 1、非修改序列操作 2、修改序列的操作 ...

yeler082的博客 5505

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

c++头文件<algorithm>小结

algorithm是c++特有的STL模板的算法头文件 包含了一些特定的算法函数 1、for_each for_each(容器起始地址,容器结束地址,要执行的方法) #include <iostream> #include <algorithm> #include <vector> using namespace std; void printElem(int...

筱寒小记 415

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

C++ <Algorithm>小小总结

C++ <Algorithm>小小总结 <algorithm>是C++标准程序库中的一个头文件,定义了C++ STL标准中的基础性的算法(均为函数模板)。<algorithm>定义了设计用于元素范围的函数集合。任何对象序列的范围可以通过迭代器或指针访问。 std::adjacent_find:在序列中查找第...

weixin_30820077的博客 398

C++<algorithm>中sort的比较函数写法

C++中sort的比较函数写法 转自:http://www.wl566.com/biancheng/98907.html C++中sort的比较函数写法,有需要的朋友可以参考下。   定义排序函数: 方法1:声明外部比较函数 bool Less(const Student& s1, const Student& s2) { return s1.name //从小到大

魔幻世界 499

<algorithm> reverse sort max min 用法 C++

一、reverse C++ &lt; algorithm &gt; 中定义的reverse函数用于反转在[first,last)范围内的顺序 template &lt;class BidirectionalIterator&gt; void reverse (BidirectionalIterator first,BidirectionalIterator last); 操作int数组 ...

shortail的空间 625

C++ <algorithm>头文件

转载自:http://blog.youkuaiyun.com/tianshuai1111/article/details/7674327#comments 更多英文内容请参考:http://www.cplusplus.com/reference/algorithm/ 是c++特有的STL模板的算法头文件 包含了一些特定的算法函数  包括sort(),stable_sort(),partical_sort

Lavi的专栏 2万+

Cpp中vector的输出打印

1. for typedef vector<int> Vct; Vct va; va.push_back(1); va.push_back(2); va.push_back(3); for(const int& k : va) cout << k << " "; cout << endl; 2. ...

weixin_33724570的博客 2087

C++ <algorithm>库中的堆

1.建堆 对于堆的操作是一些算法,而不是单独的数据结构,堆是对vector进行的操作。 建堆使用 make_heap()函数 建堆之前引入库 #include<stdio.h> #include<algorithm> 堆算法 #include<functional> 堆算法中要用的到greater函数 using namespace std...

xueying_2017的博客 836

[C++STL]算法<algorithm>中各种算法解析

 一,巡防算法         for_each(容器起始地址,容器结束地址,要执行的方法) #include #include #include using namespace std; template struct plus2 { void operator()(T&x)const { x+=2; } }; void printElem(int

wyl4138的博客 1781

C++ <algorithm> sort函数

sort函数 用于C++中,对给定区间所有元素进行排序。头文件是#include &lt;algorithm&gt; (一)为什么要用c++标准库里的排序函数 Sort()函数是c++一种排序方法之一,学会了这种方法也打消我学习c++以来使用的冒泡排序和选择排序所带来的执行效率不高的问题!因为它使用的排序方法是类似于快排的方法,时间复杂度为n*log2(n),执行效率较高! (二)c++标...

吉大秦少游 3459
上一篇: 使用Dev c++ 将m进制数n转化成一个十进制数
下一篇: Dev C++十进制转m进制
黑色吊椅
博客等级 码龄9年 102粉丝 78原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值