STL教程(十六):算法

本文深入探讨了STL(标准模板库)中的算法,包括非可变序列、可变序列、排序、集合操作等各类算法的使用。通过自定义函数,STL算法能灵活地处理容器内容。重点介绍了查找、排序、删除和替换等关键算法,并提到了头文件<algorithm>的引用。此外,还概述了算法在数值计算、堆管理和元素关系等方面的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以有限的步骤,解决逻辑上的或数学上的问题,称为算法。

为了提高算法的灵活性和功效,STL的算法允许使用者自定义一些操作(函数),提供给算法调用,这些函数可以是一般函数,也可以是仿函数(struct或类里的“()”重载函数)。

要使用 STL中的算法函数必须包含头文件<algorithm>,STL中算法分类:

  • 非可变序列算法----指不直接修改其所操作的容器内容的算法
  • 可变序列算法----指可以修改它们所操作的容器内容的算法
  • 排序算法----包括对序列进行排序和合并的算法、搜索算法以及有序序列上的集合操作
  • 数值算法----对容器内容进行数值计算

官方指导文档参考:<algorithm> - C++ Reference

1、查找算法(13个):判断容器中是否包含某个值

在这里插入图片描述

2、堆相关算法(4个) 

在这里插入图片描述

3、元素/容器关系算法(8个)

在这里插入图片描述 

4、集合相关算法(4个) 

在这里插入图片描述

5、排列组合算法(2个)

提供计算给定集合按一定顺序的所有可能排列组合。

在这里插入图片描述
 

6、排序和通用算法(14个)

提供元素排序策略 。

在这里插入图片描述

7、删除和替换算法(15个) 

在这里插入图片描述

8、生成和填充算法(6个) 

在这里插入图片描述

9、算数算法(4个) 

在这里插入图片描述

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chiang木

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值