使用C++二分查找排好序数组中目标元素的下标
```cpp #include <iostream> #include <vector> // 二分查找函数 int binarySearch(const std::vector<int>& arr, int target) { int left = 1; // 第一个元素下标为1 int right = arr.size(); while (left <= right) { int mid = left + (right - left) / 2; if (arr[mid - 1] == target) { return mid; } else if (arr[mid - 1] < target) { left = mid + 1; } else { right = mid - 1; } } return -1; // 不会执行到这里,因为保证目标数一定存在 } int main() { int n, m; std::cin >> n >> m; std::vector<int> arr(n); for (int i = 0; i < n; ++i) { std::cin >> arr[i]; } int result = binarySearch(arr, m); std::cout << result << std::endl; return 0; } ``` ######[AI问答 | 286点数解答 | 2026-06-13 19:21:56]
- C++ 高效计算序列中递增三元组数量:从 O(n^2) 到 O(n log n) 的优化之路(DeepSeek | 742点数解答 | 2025-02-25 18:35:56)311
- C++ 求解序列中递增三元组数量:动态规划实现与复杂度分析(DeepSeek | 631点数解答 | 2025-02-25 18:40:05)252
- JSP 实现商品展示模块:分页、搜索、交互与美观界面全搞定!(字节豆包 | 19点数解答 | 2024-12-13 15:00:43)381
- jQuery 实现动态操作 DOM:打造可增删任务的待办事项列表应用(百度文心 | 1015点数解答 | 2024-10-26 23:41:22)465
- jQuery 打造实用待办事项列表:输入添加、点击删除一步到位!(阿里通义 | 1139点数解答 | 2024-10-29 08:44:48)385
- jQuery 实现动态操作 DOM:打造带添加与删除功能的待办事项列表应用(阿里通义 | 687点数解答 | 2024-10-29 09:25:06)397
- PyCharm 中用 Selenium 编写自动化测试脚本,轻松登录 eShop 测试平台并点击“我的订单”(字节豆包 | 304点数解答 | 2024-11-06 15:38:30)476
- C++实现计算最少添加数字次数以匹配两个数组元素(字节豆包 | 714点数解答 | 2026-03-08 19:44:54)48
- 公立医院破局:智慧报账系统契合财政部电子会计凭证试点的建设方案(阿里通义 | 628点数解答 | 2024-05-09 10:41:51)335
- 公立医院:借智慧报账系统接轨财政部电子凭证试点,开启财务高效新篇( | 765点数解答 | 2024-05-09 10:42:37)319
- 公立医院:借电子会计凭证试点东风,打造智慧报账系统新标杆!(百度文心 | 691点数解答 | 2024-05-09 10:43:49)315
- Java 实现对象适配器:让电能、光能发动机与发动机接口完美兼容(阿里通义 | 611点数解答 | 2024-10-28 17:34:06)286