您的位置:首页 > 编程语言 > C语言/C++

C++ Primer学习之(11)——泛型算法

2014-06-13 15:33 134 查看
P508:

迭代器将算法和容器绑定起来

大多数情况下,每个算法都需要使用(至少)两个迭代器指出该算法操纵的元素范围。第一个迭代器指向第一个元素,而第二个迭代器则指向最后一个元素的下一位置。第二个迭代器被用作终止遍历的哨兵(sentinel)。(注:想到x战警逆转未来里面的哨兵了,哈哈。)

标准库提供了超过100中算法。与容器一样,算法有着一致的结构。比起死记全部一百多种算法,了解算法的设计可使我们更容易学习和使用它们。

关键概念:算法永不执行容器提供的操作。算法基于迭代器及其操作实现,而并非基于容器操作。

P510:

使用泛型算法必须包含algorithm头文件:

#include <algorithm>标准库还定义了一组泛化的算术算法,其命名习惯与泛型算法相同。使用这些算法必须包含numeric头文件:
#include <numeric>理解算法的最基本方法是了解该算法是否读元素写元素或者对元素进行重新排序
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ Primer