C++ 算法 binary_search() 函数
定义和用法
binary_search() 函数是一种高效的算法,用于检查某个值是否存在于数据范围内。
注意:数据范围必须已经是有序的。如果数据范围未排序,该函数可能返回错误结果。
可以使用 sort() 函数对数据范围内的元素进行排序。
数据范围通过迭代器指定。
实例
检查某个值是否存在于已排序的 vector 中:
vector<int> numbers = {1, 7, 3, 5, 9, 2};
sort(numbers.begin(), numbers.end());
if (binary_search(numbers.begin(), numbers.end(), 5)) {
cout << "找到了数字 5!";
} else {
cout << "未找到数字 5。";
}
语法
binary_search(iterator start, iterator end, <type> value);
其中 <type> 表示数据范围包含的数据类型。
参数
| 参数 | 描述 |
|---|---|
| start | 必需。指向要搜索数据范围起始位置的迭代器。 |
| end |
必需。指向要搜索数据范围结束位置的迭代器。 将搜索到该位置之前的元素,但不包含该位置上的元素。 |
| value | 必需。要搜索的目标值。 |
技术细节
| 返回: |
布尔值:
|
|---|
相关页面
教程:C++ 数据结构
教程:C++ 迭代器
教程:C++ 算法