【Leetcode】【简单】704. 二分查找

news2024/11/26 17:23:14

给定一个 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的时候直接返回下标就可以了!

题目解答

class Solution {
    public int search(int[] nums, int target) {
        return BinarySearch(nums, target);
    }
    int BinarySearch(int[] nums, int target){
        int left = 0, right = nums.length;
        while(left < right){
            int mid = left + (right - left)/2;
            if(nums[mid] == target)
                return mid;
            else if(nums[mid] > target)
                right = mid;
            else if(nums[mid] < target)
                left = mid + 1;
        }
        return -1;
    }
}

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/384849.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HNU工训中心:数模转换实验报告

D 级任务&#xff1a;实验 74194 的仿真验证 1. 实验任务 任务:实验 74194 的仿真验证&#xff0c;掌握 Quartus 仿真的基本原则和常规步骤&#xff0c;记录移 位寄存器的数据读写&#xff0c;并描述仿真波形&#xff0c;结果分析并记录到实验报告。 实验实作 最终的电路图…

“探索未来:VR全景直播技术引领新媒体时代”

随着虚拟现实技术的不断发展&#xff0c;VR全景直播已经成为了越来越受欢迎的直播形式。VR全景直播可以让观众通过虚拟现实设备亲临直播现场&#xff0c;享受身临其境的观看体验。VR全景直播是什么&#xff1f; VR全景直播是虚拟现实技术和直播的结合。相对于传统直播&#xff…

SOLIDWORKS提升 SAE赛车队成绩

SOLIDWORKS Education Edition实施结果&#xff1a; ●将车队成绩提升至史上最高水平 ●使用仿真工具验证赛车设计 ●促进车队成员之间的交流 ●增强设计可视化试用及报价新罕布什尔大学是美国顶级研究机构之一。UNH 拥有多个学术部门、跨学科机构和研究中心&#xff0c;屹立在…

APP发布----HBuilder

pc端&#xff1a;桌面应用&#xff1a;electronjs–vasode web应用&#xff1a; 纯前端开发—vue、react等框架 混合开发 — php、jsp、asp App开发类型 原生开发&#xff1a; Jave – AndroidObject – iosc – 鸿蒙运行效率最高、开发复杂、页面一致性 web-app&#xff08;…

新C++(12):位图与海量数据处理

"无关利弊或对错&#xff0c;勇气一直在"现在给你一道面试题:给40亿个不重复的无符号整数&#xff0c;没有任何排序。给出一个无符号整数&#xff0c;如何快速地判断&#xff0c;该数是否存在于40亿多个这样的无符号整数之中&#xff1f;唔……我想将这40亿个多数进行…

25- 卷积神经网络(CNN)原理 (TensorFlow系列) (深度学习)

知识要点 卷积神经网络的几个主要结构: 卷积层&#xff08;Convolutions&#xff09;: Valid :不填充&#xff0c;也就是最终大小为卷积后的大小. Same&#xff1a;输出大小与原图大小一致&#xff0c;那么N ​变成了​N2P. padding-零填充. 池化层&#xff08;Subsampli…

STM32HAL库1:认识时钟树(STM32F407)

目录 1.认识时钟树 1.1什么时钟 1.2认识时钟树 2.配置系统时钟 2.1系统适中的配置过程 2.2外设时钟使能和失能 2.3sys_stm32_clock_init函数&#xff08;F407&#xff09; 2.4SystemClock_Config函数&#xff08;F407&#xff09; [F1] [F4] 1.认识时钟树 1.1什么时钟 …

【禅道测试环境搭建及安装】Linux上的禅道安装教程,从环境搭建开始

目录 一、操作环境 二、安装VMware 三、安装FinalShell 四、在VMware里安装CentOS 1.前置&#xff1a;CentOS的下载 2.CentOS的安装 3.查看网络 五、用宿主机连接远程的虚拟机 六、禅道包的下载与CentOS配置的修改 七、上传项目包并安装禅道 一、操作环境 Windows 10…

Substrate 基础教程(Tutorials) -- 授权特定节点

五、授权特定节点 在添加可信节点中&#xff0c;您看到了如何使用一组已知的验证器节点构建一个简单的网络。该教程演示了一个简化版的许可网络&#xff08;permissioned network&#xff09;。在一个被许可的网络中&#xff0c;只有被授权的节点&#xff08;authorized nodes…

STM32CubexMX与FreeRTOS学习

FreeRTOS结合MX软件开发&#xff0c;基础配置直接生成&#xff0c;我们只需要会操作即可&#xff0c;操作一些API函数&#xff0c;注意事项就是&#xff1a;头文件、二值信号量一开始就有、定时器需要打开并且配置周期 1-LED-EXTI 上下拉模式和触发模式不要选择错误 void HAL_…

Elasticsearch:如何在 Elastic 中实现图片相似度搜索

作者&#xff1a;Radovan Ondas 在本文章&#xff0c;我们将了解如何通过几个步骤在 Elastic 中实施相似图像搜索。 开始设置应用程序环境&#xff0c;然后导入 NLP 模型&#xff0c;最后完成为你的图像集生成嵌入。 Elastic 图像相似性搜索概览 >> 如何设置环境 第一步…

【11】linux命令每日分享——useradd添加用户

大家好&#xff0c;这里是sdust-vrlab&#xff0c;Linux是一种免费使用和自由传播的类UNIX操作系统&#xff0c;Linux的基本思想有两点&#xff1a;一切都是文件&#xff1b;每个文件都有确定的用途&#xff1b;linux涉及到IT行业的方方面面&#xff0c;在我们日常的学习中&…

网页全屏截图、在线截图API

在我们的数字时代&#xff0c;网页截图已经成为了一个非常常见的需求&#xff0c;无论是为了记录网页信息、保存重要信息或是与他人分享自己看到的内容&#xff0c;截图工具都是必不可少的。今天&#xff0c;我想向大家推荐一个非常好用的在线网页全屏截图工具&#xff0c;它的…

获取html元素相对屏幕的位置

1. 写在前面 Javascript 由三部分构成&#xff0c;ECMAScript&#xff0c;DOM和BOM。 ECMAScript(核心)   描述了JS的语法和基本对象 Bom:(browser object model&#xff09;&#xff1b;浏览器对象模型&#xff0c;提供一些属性和方法可以操作浏览器&#xff0c;浏览器可…

【spring】Spring Data --Spring Data JPA

Spring Data 的委托是为数据访问提供熟悉且符合 Spring 的编程模型&#xff0c;同时仍保留着相关数据存储的特​​殊特征。 它使使用数据访问技术、关系和非关系数据库、map-reduce 框架和基于云的数据服务变得容易。这是一个伞形项目&#xff0c;其中包含许多特定于给定数据库…

详述java的设计模式(二)

1.工厂模式 简单工厂模式&#xff08;Simple Factory Pattern&#xff09;属于创建型模式&#xff0c;是指由一个工厂类根据传入的参数&#xff0c;动态决定应该创建哪一个产品类的对象&#xff0c;而被创建的对象通常都具有共同的父类或接口&#xff0c;这种模式又叫做静态工…

数据结构和算法学习

文章目录精通一个领域切题四件套算法算法的五个条件流程图数据结构数据与信息数据信息数据结构和算法数据结构算法时间复杂度空间复杂度数组 Array优点缺点数组和链表的区别时间复杂度链表 Linked List优点缺点时间复杂度单向链表双向链表循环链表双向循环链表堆栈 Stack队列 Q…

涂鸦开发资源中心硬核上线!支持产物包可视化、自由裁剪开发框架等功能

开发过程对于程序猿们来说&#xff0c;就像建碉堡&#xff0c;碉堡的建成速度、创造力&#xff0c;以及精致和牢固程度&#xff0c;取决于工具称不称手。不称手的开发工具&#xff0c;不仅能让人心力交瘁&#xff0c;还会多掉几根头发。 为了帮助开发者获得更好的开发体验&…

【搞透C语言指针】那年我双手插兜, 不知道指针是我的对手

☃️内容专栏&#xff1a;【C语言】进阶部分 ☃️本文概括&#xff1a; 征服C语言指针&#xff01;一篇文章搞清楚指针的全部要点。 ☃️本文作者&#xff1a;花香碟自来_ ☃️发布时间&#xff1a;2023.3.3 目录 一、字符指针 二、指针数组 三、数组指针 1.数组指针的定义…

UML常见图的总结

一、概述 UML&#xff1a;Unified Modeling Language&#xff0c;统一建模语言&#xff0c;支持从需求分析开始的软件开发的全过程。是一个支持模型化和软件系统开发的图形化语言、为软件开发的所有阶段提供模型化和可视化支持&#xff0c;包括由需求分析到规格&#xff0c;到…