C++ algorithm binary_search() 函数
示例
判断某个值是否存在于已排序的向量中:
vector<int> numbers = {1, 7, 3, 5, 9, 2};
sort(numbers.begin(), numbers.end());
if (binary_search(numbers.begin(), numbers.end(), 5)) {
cout << "The number 5 was found!";
} else {
cout << "The number 5 was not found.";
}
亲自试一试 »
定义和用法
binary_search() 函数是一种高效的算法,用于检查某个值是否存在于数据范围内。
数据范围必须已经排序。如果数据范围未排序,则该函数可能会返回错误的结果。可以使用 sort() 函数对数据范围内的元素进行排序。
数据范围由迭代器指定。
语法
binary_search(iterator start, iterator end, <type> value);
<type> 指的是该范围包含的数据类型。
参数值
| 参数 | 描述 |
|---|---|
| start | 必填。指向要搜索的数据范围起始位置的迭代器。 |
| end | 必填。指向要搜索的数据范围结束位置的迭代器。将搜索到此位置之前的元素,但不会包含此位置的元素。 | value | 必填。要搜索的值。 |
技术细节
| 返回值: | 布尔值:
|
|---|
相关页面
阅读更多关于数据结构的内容,请参阅我们的数据结构教程。
阅读更多关于迭代器的内容,请参阅我们的迭代器教程。
阅读更多关于算法的内容,请参阅我们的算法教程。

