C++ algorithm search() 函数
示例
判断一个向量是否包含在另一个向量中:
vector<int> numbers = {1, 7, 3, 5, 9, 2};
vector<int> target = {3, 5, 9};
if (search(numbers.begin(), numbers.end(), target.begin(), target.end()) != numbers.end()) {
cout << "Target was found";
} else {
cout << "The target was not found";
}
亲自试一试 »
定义和用法
search() 函数在一个数据范围内搜索由另一个数据范围指定的序列值,并返回一个指向找到该序列位置的迭代器。
数据范围由迭代器指定。
语法
search(iterator start, iterator end, iterator search_start, iterator search_end);
参数值
| 参数 | 描述 |
|---|---|
| start | 必需。指向要搜索的数据范围起始位置的迭代器。 |
| end | 必需。指向要搜索的数据范围结束位置的迭代器。将包含到此位置之前的元素,但不会包含此位置的元素。 |
| search_start | 必需。指向包含要搜索序列的数据范围起始位置的迭代器。 |
| search_end | 必需。指向包含要搜索序列的数据范围结束位置的迭代器。将包含到此位置之前的元素,但不会包含此位置的元素。 |
技术细节
| 返回值: | 指向序列在第一个数据范围内起始位置的迭代器。如果未找到序列,则返回第一个数据范围的末尾。 |
|---|
相关页面
阅读更多关于数据结构的内容,请参阅我们的数据结构教程。
阅读更多关于迭代器的内容,请参阅我们的迭代器教程。
阅读更多关于算法的内容,请参阅我们的算法教程。

