首页 > 试题广场 >

二分查找-I

[编程题]二分查找-I
  • 热度指数:222399 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
请实现无重复数字的升序数组的二分查找

给定一个 元素升序的、无重复数字的整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标(下标从 0 开始),否则返回 -1

数据范围: , 数组中任意值满足
进阶:时间复杂度 ,空间复杂度

示例1

输入

[-1,0,3,4,6,10,13,14],13

输出

6

说明

13 出现在nums中并且下标为 6     
示例2

输入

[],3

输出

-1

说明

nums为空,返回-1     
示例3

输入

[-1,0,3,4,6,10,13,14],2

输出

-1

说明

2 不存在nums中因此返回 -1     

备注:
数组元素长度在[0,10000]之间
数组每个元素都在 [-9999, 9999]之间。
头像 牛客题解官
发表于 2022-04-22 11:39:15
精华题解 题目的主要信息: 给定一个元素升序的、无重复数字的整型数组 nums 和一个目标值 target 找到目标值的下标 如果找不到返回-1 举一反三: 学习完本题的思路你可以解决如下题目: BM18.二维数组中的查找 BM19.寻找峰值 BM21.旋转数组 方法:二分法(推荐使用) 知识点:分治 分 展开全文
头像 猫头鹰的咖啡馆
发表于 2021-10-20 10:27:59
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型vector * @param target int整型 展开全文
头像 大铁锤5号
发表于 2022-07-07 17:40:17
简单的二分查找 前提:数组有序(可先排序),无重复数组(可单独处理) 1. 一般使用左闭右开区间,感觉代码容易一点点,不要记太多的套路,直接一套带走,左闭右开 2. 二分查找特别需要注意左右的区间: 这里很容易写错,所以最好的办法是在纸上画一个数组,要记住边界的限定,时刻在心中默念 展开全文
头像 牛客420080390号
发表于 2022-03-15 20:09:40
```# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param nums int整型一维数组 # @param target int整型 # @return int整型 # class Solution: def search(self 展开全文
头像 旺旺汪汪大旺财
发表于 2022-03-08 10:52:52
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @param target int整型 展开全文
头像 amber-cape
发表于 2022-03-14 15:12:43
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @param target int整型 * @return int整型 */ function search( nums , target ) 展开全文
头像 慢热的大白菜
发表于 2022-09-10 11:02:04
int search(int* nums, int numsLen, int target ) {     // write code here &n 展开全文
头像 KEY.L
发表于 2022-06-24 21:22:38
二分作为一个最为普通且需要我们具备的简单算法 无论在何时何地都有许多的妙用,可以和许许多多的算法加以结合~~~~ 而且有衍伸的二分,三分等等..... 首先要明白: 二分的本质是二段性不是单调性。。。。 当想找不满足性质的边界值(红***域的右边界值) 二分左区间的右端 展开全文
头像 码农后端
发表于 2022-11-08 11:20:04
class Solution:     def search(self,nums,target):         left=0 #左指针初始索引为0 &nbs 展开全文
头像 宫水三叶的刷题日记
发表于 2021-08-27 14:17:24
朴素做法 一个朴素的做法,从前往后进行处理,直到遇到符合条件的位置。 代码: import java.util.*; public class Solution { public int search (int[] nums, int target) { int n = n 展开全文
头像 Mr_Way
发表于 2022-11-01 14:18:52
给自己看 class Solution:     def search(self , nums: List[int], target: int) -> int: 展开全文

问题信息

上传者:牛客301499号
难度:
206条回答 3881浏览

热门推荐

通过挑战的用户

查看代码