leetcode中如何解决二分查找问题
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章将为大家详细讲解有关leetcode中如何解决二分查找问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。题目链接https://leetcode-cn.co
千家信息网最后更新 2026年11月01日leetcode中如何解决二分查找问题
这篇文章将为大家详细讲解有关leetcode中如何解决二分查找问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
题目链接
https://leetcode-cn.com/problems/binary-search/
题目描述
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。
示例 1:
输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4
示例 2:
输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1
提示:
你可以假设
nums中的所有元素是不重复的。n将在[1, 10000]之间。nums的每个元素都将在[-9999, 9999]之间。
解题方案
思路
标签:二分查找
过程:
设定左右指针
找出中间位置,并判断该位置值是否等于target
nums[mid] == target 则返回该位置下标
nums[mid] > target 则右侧指针移到中间
nums[mid] < target 则左侧指针移到中间
时间复杂度:O(logN)
画解


代码
class Solution { public int search(int[] nums, int target) { int left = 0, right = nums.length - 1; while(left<=right) { int mid = left + (right - left) / 2; if(nums[mid] == target) { return mid; } else if(nums[mid] > target) { right = mid - 1; } else { left = mid + 1; } } return -1; }}关于"leetcode中如何解决二分查找问题"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
下标
位置
元素
指针
篇文章
问题
之间
更多
目标
目标值
示例
题目
解释
输入
输出
不错
复杂
实用
有序
代码
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网高科技
互联网科技网
互联网科技活动banner
厦门中拓互联网络科技有限公司
融贸通互联网科技
互联网科技咨询
深圳市运趣互联网科技有限公司
成都互联网科技公司100强
现代互联网科技股
科技互联网海报
元气玛特互联网科技公司是外包吗
北京市互联网新科技
宇信科技在杭州互联网排第几
风投北京互联网科技
上海同邻互联网科技有限公司规模
江苏互联网智能科技产品出厂价
众联互联网络科技
互联网科技创业有什么好项目
高科技和互联网的现代国家
每日互联网科技新闻
互联网和科技创新
腾讯科技 互联网女皇
奇士达互联网科技
互联网科技美容
多迪互联网科技有限公司
开一家科技互联网公司需要多少钱
银行科技岗属于互联网吗
青岛易易互联网科技
互联网企业和网络科技有限公司
互联网科技创业有什么好项目