Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C++ 教程

C++ 主页 C++ 简介 C++ 入门 C++ 语法 C++ 输出 C++ 注释 C++ 变量 C++ 用户输入 C++ 数据类型 C++ 运算符 C++ 字符串 C++ 数学 C++ 布尔值 C++ If...Else C++ Switch C++ While 循环 C++ For 循环 C++ Break/Continue C++ 数组 C++ 结构体 C++ 枚举 C++ 引用 C++ 指针

C++ 函数

C++ 函数 C++ 函数参数 C++ 函数重载 C++ 作用域 C++ 递归

C++ 类

C++ 面向对象编程 C++ 类/对象 C++ 类方法 C++ 构造函数 C++ 访问修饰符 C++ 封装 C++ 继承 C++ 多态性 C++ 文件 C++ 异常 C++ 日期

C++ 数据结构

C++ 数据结构 & STL C++ 向量 C++ 列表 C++ 堆栈 C++ 队列 C++ 双端队列 C++ 集合 C++ 映射 C++ 迭代器 C++ 算法

C++ 如何

C++ 相加两个数字 C++ 随机数

C++ 参考

C++ 参考 C++ 关键字 C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime> C++ <vector> C++ <algorithm>

C++ 示例

C++ 示例 C++ 现实生活中的例子 C++ 编译器 C++ 练习 C++ 问答 C++ 证书


C++ 算法 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 必填。要搜索的值。

技术细节

返回值 布尔值
  • 1 - 如果在数据范围内找到该值
  • 0 - 如果在数据范围内未找到该值

相关页面

在我们的 数据结构教程 中了解有关数据结构的更多信息。

在我们的 迭代器教程 中了解有关迭代器的更多信息。

在我们的 算法教程 中了解有关算法的更多信息。


❮ 算法函数

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.