STL算法分类记忆

STL算法包括非变动性、变动性、移除性、变序性、排序和对已序区间的算法。非变动性算法如count、min_element等;变动性算法如copy、merge;移除性算法如remove、unique;变序性算法如reverse、random_shuffle;排序算法如sort、stable_sort;已序区间算法如binary_search、merge。这些算法以迭代器或函数对象为参数,提供高效的操作序列元素的方式。
摘要由CSDN通过智能技术生成

      STL算法主要是我们强大的标准库中以迭代器或数值或函数对象为参数预先定义好的一系列算法操作。

     在STL算法分类中首先要提的就是两个普遍存在的后缀:

     _if   

     _copy 

     其中这两个后缀的作用分别是:一、对于_if,如果算法存在两种形式,参数的个数相同,其中一种形式的参数要求传递一个值,而另一种形式则会要求传递一个函数或仿函数(函数对象),那么则没有_if后缀的形式要求传递数值,有_if后缀的则要求传递函数。而且传递的函数一般都会是一个一元或二元的判别式。二、_copy后缀则表示在此算法中元素在被复制到目标区间的同时会被处理,而源序列则保持不变。

     除此之外,STL算法可以按照其操作的特性分为一下几个类别:

一、非变动性算法

           非变动性算法主要是指不会改变元素的次序和改变元素值的操作,典型的操作是:计数count、求最值(min_element,max_element)、搜寻某个特定元素find、搜寻某段特定元素sear

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值