STL常用算法学习总结
2013-01-04 16:39
351 查看
只列出了部分算法,每个算法仅给出了一种常用法,还有其他更多用法,请查看C++标准手册
std::vector<int>v,b,c;
binary_search( v.begin(), v.end(), 要查找的值 );//二分查找 copy( v.begin(), v.end(),b.begin() );//复制 count (v.begin(), v.end(), 要查找的值);// 查找容器中指定值的数量 equal (v.begin(), v.end(), b);//比较两个容器,看是否完全相等 fill(v.begin(), v.end(), 要填充的值);//填充值到指定范围 find (v.begin(), v.end(),要查找的值);//普通查找 for_each (v.begin(), v.end(), 带传入参数的函数名);//将V中的所有元素遍历传入指定函数中 generate(v.begin(), v.end(), 带返回参数的函数名);//用指定函数的返回值填充容器V includes(v.begin(),v.end(),b.begin(),b.end());//返回b中所有的元素是否在v中的bool值,需先用sort排序 iter_swap(v.begin(),b.end());//交换两个迭代器的值 merge (v.begin(),v.end(),b.begin(),b.end(),c.begin());//合并两个容器到第三个容器中 mismatch (v.begin(),v.end(),b.begin());//逐个比较两个容器中的对应下标的元素是否相等,返回两个容器中首个不相等的值到一个pair中 remove(v.begin(), v.end(),要删除的值);//删除指定值 replace (v.begin(), v.end(), x, a); //查找范围内所有的数据x替换成a reverse(v.begin(), v.end());//把范围内所有数据按相反的顺序排列 rotate(v.begin(),v.begin()+3,v.end());//把范围内的数据转移到指定点 search(v.begin(),v.end(),b.begin(),b.end())//在容器v范围中查找子范围b,找到返回子范围的起始迭代器 sort (v.begin(),v.begin()+4); //对指定范围内的元素进行排序 stable_sort (v.begin(),v.end()); //保证相等元素的相对前后位置不变的排序。 sort_heap (v.begin(),v.end()); //堆排序 swap(v,b);//交换两个容器内的所有元素 swap_ranges(v.begin(),v.begin()+3,b.begin());//交换v指定范围内的元素和b指定迭代器处向后相等数量的元素 transform (v.begin(), v.end(), b.begin(), 带传入参数的函数名);//遍历容器v指定范围内的元素传入自定义操作函数中处理后存入容器b中
相关文章推荐
- 机器学习中常用算法总结
- 【算法专题】工欲善其事必先利其器—— C++ STL中vector(向量/不定长数组)的常用方法总结
- 深度学习常用优化算法总结整理
- C++:STL常用函数模块总结(算法algorithm)
- STL一些常用的容器和算法--总结
- 《c++程序标准库》中的 STL算法 学习总结
- 一张表总结机器学习/深度学习常用权重学习优化算法的迭代公式
- ACM等算法比赛中JAVA 常用"STL"总结:TreeMap,Queue,PriorityQueue等
- STL学习之十四:常用算法 for_each 和 transform以及adjacent_find的示例代码
- MySQL学习总结(四)数据的基本操作以及MySQL运算符和常用函数
- Linux常用命令学习总结三(which,find,文件系统,df,du)
- STL源码学习--vector使用方法总结
- CS231n课程学习笔记(六)——常用的激活函数总结
- JVM学习之GC常用算法
- iOS学习之常用第三方框架总结(经典/必看)
- 系统算法学习总结
- STL容器学习总结
- Linux学习笔记:常用命令总结
- JAVA 常用算法学习记录(穷举算法)
- lambda与算法模板学习总结