leetcode中如何解决二分查找问题
发表于:2024-10-23 作者:千家信息网编辑
千家信息网最后更新 2024年10月23日,这篇文章将为大家详细讲解有关leetcode中如何解决二分查找问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。题目链接https://leetcode-cn.co
千家信息网最后更新 2024年10月23日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安全错误
数据库的锁怎样保障安全
sql 进入数据库
苏州第三方软件开发如何收费
巴中师范学院网络安全宣传
济源app软件开发哪家公司好
航海网络安全事件
网络安全要坚持什么并重
星网锐捷网络技术 加班
怎么找安卓数据库在哪里
无锡工程网络技术值多少钱
翼葵网络技术有限公司
计算机网络技术 21互联
无锡仓库管理软件开发
数据库删除sc表里的信息
数据库oracle查询相同数据
数据库选课系统的表
加密ssl中转塔服务器
网络安全媒介素养
参加网络安全培训机构
vpn搭建手机服务器
会计财务软件开发公司
sql 进入数据库
西安游戏软件开发
bcp文件是什么数据库
数据库技术应用在哪些专业
服务器响声太大怎么解决
计算网络技术现状
苏州涵灵心网络技术
深圳互联网科技网卡有限公司
互联网网络安全学报英文
电脑b站显示找不到服务器