1010: 折半查找的实现

解法:

cpp 复制代码
#include<iostream>
#include<vector>
using namespace std;
void solve() {
	int n;
	cin >> n;
	vector<int> vec(n);
	for (int& x : vec) cin >> x;
	int x;
	cin >> x;
	int l = 0, r = n-1, cnt = 0;
	while (l <= r) {
		cnt++;
		int mid = l + (r - l) / 2;
		if (vec[mid] > x) 
			r = mid - 1;
		else if (vec[mid] < x)
			l = mid + 1;
		else {
			cout << mid << endl;
			cout << cnt;
			return;
		}
	}
	cout << -1 << endl;
	cout << cnt;
}
int main() {
	solve();
	return 0;
}
相关推荐
未来之窗软件服务2 分钟前
幽冥大陆(三十九)php二维数组去重——东方仙盟筑基期
android·开发语言·算法·php·仙盟创梦ide·东方仙盟·东方仙盟sdk
DFT计算杂谈5 分钟前
Abinit-10.4.7安装教程
linux·数据库·python·算法·matlab
sali-tec14 分钟前
C# 基于halcon的视觉工作流-章65 点云匹配-基于形状
开发语言·人工智能·算法·计算机视觉·c#
不会c嘎嘎20 分钟前
【C++】深入理解多态:从用法到原理
开发语言·c++
REDcker23 分钟前
软件开发者需要关注CPU指令集差异吗?
linux·c++·操作系统·c·cpu·指令集·加密算法
聆风吟201723 分钟前
【数据结构入门手札】数据结构基础:从数据到抽象数据类型
数据结构
AI科技星25 分钟前
自然本源——空间元、氢尺、探针与场方程
数据结构·人工智能·算法·机器学习·计算机视觉
不知所云,34 分钟前
5. SDL3 库项目引入
c++·sdl3
小O的算法实验室34 分钟前
2025年CMAME SCI2区,基于优先级驱动搜索、具备动态候选解管理策略的粒子群算法,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
吃着火锅x唱着歌38 分钟前
LeetCode 2874.有序三元组中的最大值II
数据结构·算法·leetcode