C++——排序,拷贝,替换,算术

C++——排序,拷贝,替换,算术,第1张

一、常用排序算法

  • sort //对容器内元素进行排序
  • random_shuffle//洗牌 指定范围内的元素随机调整次序
  • merge//容器元素合并,并存储到另一个容器中
  • reverse//反转指定范围的元素

    1.1sort功能:对容器内元素进行排序

函数原型:sort(iterator beg,iterator end,_Pred );

//按值查找元素,找到返回指定位置迭代器,找不到返回结束迭代器位置

//beg 开始迭代器 //end结束迭代器 //_Pred 谓词


1.2random_shuffle功能:洗牌指定范围内的元素随机调整次序

函数原型:random_shuggle(iterator beg,iterator end)

//指定范围内的元素随机调整次序

//beg开始迭代器 //end结束迭代器

srand((unsigned int)time(NULL));添加随机的种子


1.3merge函数:两个容器元素合并,并存储到另一个容器中

函数原型:

merge(iterator beg1,iterator end1,iterator beg2,iteratorend2,iterator dest);

//容器元素合并,并且存储到另一个容器中

//注意:两个容器必须时有序的 //dest目标容器开始迭代器


1.4reverse功能:将容器内元素进行反转

函数原型:reverse(iterator beg,iterator end);

//反转指定范围的元素 //beg开始迭代器 //end借宿迭代器


二、常用的拷贝和替换算法、

copy        //容器内指定范围的元素拷贝到另一个容器中

replace        //将容器内指定范围的旧元素改为新元素

replace_if        //容器内指定范围满足条件的元素替换为新元素

swap        //互换两个容器的元素


 2.1copy功能:容器内指定范围的元素拷贝到另一个容器中

函数原型:copy(iterator beg,iterator end,iterator sest);

//dest目标起始迭代器

****拷贝的时候目标容器需要先给定大小


2.2replace功能:将容器内指定范围的旧元素修改为新元素

函数原型:

replace(iterator beg,iterator end,oldvalue,newvalue);

//将区间内旧元素替换成新元素        //beg开始迭代        //end结束迭代器

//old value旧元素        //newvalue新元素


2.3replace_if功能:将区间内满足条件的元素,替换成指定元素

replace_if(iterator beg,iterator end,_Pred,newvalue);

//按条件替换元素,满足条件的替换成指定元素

//beg开始迭代器        //end结束迭代器        //_pred谓词        //newvalue替换的新元素


2.4swap算法:互换两个容器的元素

函数原型:swap(container c1,container c2);

//互换两个容器元素        //c1容器1        //c2容器2


三、常用的算术生成算法

注意:算术生成算法属于小型算法,使用时包含头文件为#include

算法简介:

accumulate        //计算容器元素累计总和

fill        //向容器中添加元素


3.1accumulate功能:计算区间内容器元素累计总和

accumulate(iterator bed ,iterator end ,value)

//计算容器元素累计总和        //beg开始迭代器        //end结束迭代器        //value起始值


3.2 fill功能:向容器中填充指定元素

函数原型:fill(iterator beg,iterator end,value)

//向容器中填充元素        //beg开始迭代器        //end结束迭代器        //value填充的值


四、常用集合算法

set_intersection        /求两个容器的交集

set_union        //求两个容器的并集

set_difference        //求两个容器的差集


4.1 set_intersection  功能求两个容器交集

函数原型

set_intersection(iterator beg1,iterator end1,iterator beg2,iterator end2,iterator dest)

 //求两个集合的交集        //注意:两个集合必须时有序序列

//beg1容器1开始迭代器        //dest目标容器开始迭代器 


4.2 set_union 功能:求两个几个的并集

函数原型:

set_union(iterator beg1,iterator end1,iterator beg2,iterator end2,iterator dest);

注意:两个集合必须时有序序列


4.3 set_difference 功能:求两个几个的差值

set_difference(iterator beg1,iterator end1,iterator beg2,iterator end2,iterator dest);

注意:两个集合必须时有序序列

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/756562.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-30
下一篇 2022-04-30

发表评论

登录后才能评论

评论列表(0条)

保存