STL算法部分主要由头文件,,组成。要使用 STL中的算法函数必须包含头文件,对于数值算法须包含,中则定义了一些模板类,用来声明函数对象。
STL中算法大致分为四类:
- 非可变序列算法:指不直接修改其所操作的容器内容的算法。
- 可变序列算法:指可以修改它们所操作的容器内容的算法。
- 排序算法:包括对序列进行排序和合并的算法、搜索算法以及有序序列上的集合操作。
- 数值算法:对容器内容进行数值计算。
查找算法:
判断容器中是否包含某个值
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190317081230184.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoYXluZTAwMA==,size_16,color_FFFFFF,t_70)
排序和通用算法:
提供元素排序策略
![在这里插入图片描述](https://img-blog.csdnimg.cn/2019031708144128.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoYXluZTAwMA==,size_16,color_FFFFFF,t_70)
删除和替换算法
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190317081639226.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoYXluZTAwMA==,size_16,color_FFFFFF,t_70)
算术算法
![在这里插入图片描述](https://img-blog.csdnimg.cn/2019031708170596.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoYXluZTAwMA==,size_16,color_FFFFFF,t_70)
生成和异变算法
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190317081757367.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoYXluZTAwMA==,size_16,color_FFFFFF,t_70)
关系算法
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190317082122936.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoYXluZTAwMA==,size_16,color_FFFFFF,t_70)
堆算法
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190317082151578.png)