1236 - 二分查找

代码

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int a[1100000];
int main()
{
	int n,x,l,r,p,mid,i;
	cin>>n;
	for(i=1;i<=n;i++)
		cin>>a[i];
	cin>>x;
	l=1;
	r=n;
	p=-1;
	while(l<=r)
	{
		mid=(r+l)/2;
		if(a[mid]==x)
		{
			p=mid;
			break;
		}
		else if(x<a[mid]) r=mid-1;
		else if(x>a[mid]) l=mid+1;
	}
	cout<<(p==-1?-1:p);
	return 0;
}

记得点赞+关注+收藏!!!谢谢!!!

相关推荐
一分之二~1 分钟前
回溯算法--全排列
c语言·数据结构·c++·算法·leetcode
sali-tec1 分钟前
C# 基于halcon的视觉工具VisionTool Halcon发布
人工智能·深度学习·算法·计算机视觉·分类
ohnoooo99 分钟前
251211算法 搜索
数据结构·算法
热爱专研AI的学妹10 分钟前
Coze-AI 智能体平台:工作流如何成为智能体的 “自动化引擎”?解锁零代码落地新范式
运维·数据结构·人工智能·自动化
oioihoii12 分钟前
C++与浏览器交织-从Chrome插件到WebAssembly,开启性能之门
c++·chrome·wasm
CodeByV13 分钟前
【算法题】二分
算法
十五年专注C++开发14 分钟前
Xapian: 一款C++全文检索解决方案
c++·全文检索
想唱rap14 分钟前
哈希(C++)
服务器·开发语言·c++·算法·哈希算法
聆风吟º24 分钟前
【数据结构手札】顺序表实战指南(三):扩容 | 尾插 | 尾删
数据结构·顺序表·扩容·尾插·尾删
资深web全栈开发24 分钟前
LeetCode 2054:两个最好的不重叠活动 —— 从暴力到优化的完整思路
算法·leetcode