千家信息网

C++ STL常用算法有哪些

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容介绍了"C++ STL常用算法有哪些"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!##查找算
千家信息网最后更新 2026年11月02日C++ STL常用算法有哪些

本篇内容介绍了"C++ STL常用算法有哪些"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

##查找算法
####adjacent_find()
在iterator对标识元素范围内,查找一对相邻重复元素,找到则返回指向这对元素的第一个元素的迭代器。否则返回past-the-end。

vector vecInt;    vecInt.push_back(1);    vecInt.push_back(2);    vecInt.push_back(3);    vecInt.push_back(4);    vecInt.push_back(5);    vecInt.push_back(5);    vector::iterator it = adjacent_find(vecInt.begin(), vecInt.end());

####binary_search
在有序序列中查找value,找到则返回true。注意:在无序序列中,不可使用。

set setInt;    setInt.insert(2);    setInt.insert(1);    setInt.insert(8);    setInt.insert(5);    setInt.insert(9);    bool bFind = binary_search(setInt.begin(),setInt.end(),8);

####count()
利用等于操作符,把标志范围内的元素与输入值比较,返回相等的个数。

vector vecInt;    vecInt.push_back(8);    vecInt.push_back(2);    vecInt.push_back(1);    vecInt.push_back(4);    vecInt.push_back(8);    vecInt.push_back(6);    int iCount = count(vecInt.begin(),vecInt.end(),8);  //iCount==2

####count_if()
count_if 算法计算中的元素范围 [first, last),返回满足条件的元素的数量。

vector vecInt;    vecInt.push_back(3);    vecInt.push_back(3);    vecInt.push_back(1);    vecInt.push_back(4);    vecInt.push_back(8);    vecInt.push_back(9);    int count = count_if(vecInt.begin(), vecInt.end(), evenNumber);// 偶数个数是 2;

####find
利用底层元素的等于操作符,对指定范围内的元素与输入值进行比较。当匹配时,结束搜索,返回该元素的迭代器。

####equal_range:
返回一对iterator,第一个表示lower_bound,第二个表示upper_bound。

##查找算法
merge()
以下是排序和通用算法:提供元素排序策略
merge: 合并两个有序序列,存放到另一个序列。
例如:vecIntA,vecIntB,vecIntC是用vector声明的容器,vecIntA已包含1,3,5,7,9元素,vecIntB已包含2,4,6,8元素
vecIntC.resize(9); //扩大容量
merge(vecIntA.begin(),vecIntA.end(),vecIntB.begin(),vecIntB.end(),vecIntC.begin());
此时vecIntC就存放了按顺序的1,2,3,4,5,6,7,8,9九个元素
####sort()
sort: 以默认升序的方式重新排列指定范围内的元素。若要改排序规则,可以输入比较函数。

random_shuffle()
random_shuffle: 对指定范围内的元素随机调整次序。

"C++ STL常用算法有哪些"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

元素 算法 范围 序列 排序 输入 常用 C++ 有序 个数 内容 操作符 更多 知识 迭代 实用 学有所成 接下来 两个 偶数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广东万易互联网科技有限公司惠州分公司 互联网是第几次科技革命的成果 互联网 科技 互联网金融与金融科技 广州宏创互联网科技 无线互联网科技 上海亿帐通互联网科技 互联网科技有限公司 翻译 深圳互联网科技怎么样 互联网科技实习生岗位职责 互联网科技中介 知域互联网科技有限公司大骗子 互联网科技大赛获奖感言 互联网金融科技元年 北京市互联网新科技 广东工业互联网大赛深圳学泰科技 从那以后互联网科技有限公司 互联网硬科技公司 吉林省码上互联网科技电话 上海万顺科技互联网有限公司招聘 华服互联网科技怎么样 科技互联网技术 安徽鑫晟辉互联网科技 极限挑战互联网科技 上游互联网科技 安控科技rtu产品工业互联网 承德科技产业互联网发展 阿大互联网科技有限公司 杭州壁岐互联网科技有限公司 互联网领先科技宣传片
0