C++ 算法函数 search()

2024 年 8 月 30 日 | 阅读 2 分钟

C++ 算法 search() 函数在范围 [first1, last1) 中搜索由范围 [first2, last2) 定义的子序列的出现,并返回一个指向第一个元素的迭代器。如果子序列不存在,则返回一个指向 last1 的迭代器。

语法

参数

first1: 指向 [first1, last1) 范围第一个元素的前向迭代器。

last1: 指向 [first1, last1) 范围最后一个元素的前向迭代器。

first2: 指向 [first2, last2) 范围第一个元素的前向迭代器。

pred:这是一个二元函数,接受两个元素作为参数并执行函数设计好的任务。

返回值

该函数返回一个指向子序列首次出现的第一个元素的迭代器,否则返回 last1 元素。

示例 1

输出

patt1 found at position 1
patt2 not found

示例 2

输出

Vector2 is present at index:2

复杂度

该函数从 first1 元素到 last1 元素具有线性复杂度。

数据竞争

访问两个范围中的对象。

异常

如果任何参数抛出异常,则该函数会抛出异常。