当前位置: 首页 > news >正文

力扣初级算法(二分查找)

力扣初级算法(二分法):

  • 每日一算法:二分法查找

学习内容:

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
在这里插入图片描述

2.二分查找流程:

left=0,right=nums.length,取mid为中间值

  • 如果nums[mid]==target,返回mid值,循环终止
  • 如果nums[mid]>target,就说明从mid到right之间的值都是“无用的”需要挪动right,而我们能知道的接近的一个无用的值是mid,因此right必须比mid还要小才行,也即是right=mid-1;
    同理,left=mid+1;
  • 一直循环,除非找到mid值或者发现target根本不在目标中,也就是已经完全循环了一遍(left>right),这时候的left的值就是最接近target但又大于target的值(可以拿0来举例自己画一遍过程),因此return left

3.二分查找实现:


class Solution {public int searchInsert(int[] nums, int target) {//二分法//左边下标int left = 0;//右边下标int right = nums.length -1;while(left <= right){int mid = left + (right - left)/2;//相等,直接取出if(nums[mid] == target){return mid;}else if(nums[mid]<target){ //中间值小于所给的值,从中间值加一开始往右找left = mid + 1;}else if(nums[mid] > target){/中间值大于所给的值,从中间值减一开始往左找right = mid -1;}}return left;}
}

学习时间:

2023/08/03

相关文章:

力扣初级算法(二分查找)

力扣初级算法(二分法)&#xff1a; 每日一算法&#xff1a;二分法查找 学习内容&#xff1a; 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 2.二分查找流程&…...

探索未来:直播实时美颜SDK在增强现实(AR)直播中的前景

在AR直播中&#xff0c;观众可以与虚拟元素实时互动&#xff0c;为用户带来更加丰富、沉浸式的体验。那么&#xff0c;直播美颜SDK在AR中有哪些应用呢&#xff1f;下文小编将于大家一同探讨美颜SDK与AR有哪些关联。 一、AR直播与直播实时美颜SDK的结合 增强现实技术在直播中…...

SQL 单行子查询 、多行子查询、单行函数、聚合函数 IN 、ANY 、SOME 、ALL

单行子查询 子查询结果是 一个列一行记录 select a&#xff0c;b&#xff0c;c from table where a >(select avg(xx) from table ) 还支持这种写法,这种比较少见 select a&#xff0c;b&#xff0c;c from table where (a ,b)(select xx,xxx from table where col‘000’ )…...

【第一阶段】kotlin的range表达式

range:范围&#xff1a;从哪里到哪里的意思 in:表示在 !in&#xff1a;表示不在 … :表示range表达式 代码示例&#xff1a; fun main() {var num:Int20if(num in 0..9){println("差劲")}else if(num in 10..59){println("不及格")}else if(num in 60..89…...

网络防御(5)

一、结合以下问题对当天内容进行总结 1. 什么是恶意软件&#xff1f; 2. 恶意软件有哪些特征&#xff1f; 3. 恶意软件的可分为那几类&#xff1f; 4. 恶意软件的免杀技术有哪些&#xff1f; 5. 反病毒技术有哪些&#xff1f; 6. 反病毒网关的工作原理是什么&#xff1f; 7. 反…...

gradle 命令行单元测试执行问题

文章目录 问题&#xff1a;命令行 执行失败最终解决方案&#xff08;1&#xff09;ADB命令&#xff08;2&#xff09;Java 环境配置 问题&#xff1a;命令行 执行失败 命令行 执行测试命令 无法使用&#xff08;之前还能用的。没有任何改动&#xff0c;又不能用了&#xff09; …...

剑指Offer12.矩阵中的路径 C++

1、题目描述 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。单词必须按照字母顺序&#xff0c;通过相邻的单元格内的字母构成&#xff0c;其中“相邻”单元格是那些水平…...

金鸣识别将无表格线的图片转为excel的几个常用方案

我们知道&#xff0c;金鸣识别要将横竖线齐全的表格图片转为excel非常简单&#xff0c;但要是表格线不齐全甚至没有表格线的图片呢&#xff1f;这就没那么容易了&#xff0c;在识别这类图片时&#xff0c;我们一般会使用以下的一种或多种方法进行处理&#xff1a; 1. 基于布局…...

刚刚更新win11,记事本消失怎么处理?你需要注意些什么?

记录window11的bug hello&#xff0c;我是小索奇 昨天索奇从window10更新到了window11&#xff0c;由于版本不兼容卸载了虚拟机&#xff0c;这是第一个令脑壳大的&#xff0c;算了&#xff0c;还是更新吧&#xff0c;了解了解win11的生态&#xff0c;后期重新装虚拟机 第一个可…...

【QT】 QTabWidgetQTabBar控件样式设计(QSS)

很高兴在雪易的CSDN遇见你 &#xff0c;给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 本文分享QT控件QTabWidget&QTabBar的样式设计&#xff0c;介绍两者可以自定义的内容&#xff0c;以及如何定义&#xff0c;希望对各位小伙伴有所帮助&#xff01; 感谢各位小伙伴…...

【个人记录】CentOS7 编译安装最新版本Git

说明 使用yum install git安装的git版本是1.8&#xff0c;并不是最新版本&#xff0c;使用gitlab-runner托管时候会拉项目失败&#xff0c;这里使用编译源码方式安装最新版本的git。 基础环境安装 echo "nameserver 8.8.8.8" >> /etc/resolv.conf curl -o /…...

【Linux】计算机网络的背景和协议分层

文章目录 网络发展协议何为协议网络协议协议分层OSI七层模型TCP/IP五层模型&#xff08;四层&#xff09; 基本通信流程mac地址和ip地址网络通信本质 网络发展 从一开始计算机作为一台台单机使用&#xff0c;到现在网络飞速发展&#xff0c;从局域网Lan建立起局域网&#xff0…...

代理模式:静态代理+JDK/CGLIB 动态代理

文章目录 1. 代理模式2. 静态代理3. 动态代理3.1. JDK 动态代理机制3.1.1. 介绍 3.1.2. JDK 动态代理类使用步骤3.1.3. 代码示例3.2. CGLIB 动态代理机制3.2.1. 介绍3.2.2. CGLIB 动态代理类使用步骤3.2.3. 代码示例 3.3. JDK 动态代理和 CGLIB 动态代理对比 4. 静态代理和动态…...

gps虚拟定位 AnyGo for Mac 中文

要在AnyGo中进行Gps位置模拟&#xff0c;您只需连接您的设备并选择“位置模拟”选项&#xff0c;然后输入您想要模拟的位置信息即可。通过使用AnyGo&#xff0c;您可以轻松地模拟任何地方的位置&#xff0c;而无需实际去到那个地方。 借助AnyGo&#xff0c;您可以通过在地图上…...

LLM reasoners 入门实验 24点游戏

LLM reasoners Ber666/llm-reasoners 实验过程 实验样例24games&#xff0c;examples/tot_game24&#xff0c;在inference.py中配置使用代理和open ai的api key。 首先安装依赖 git clone https://github.com/Ber666/llm-reasoners cd llm-reasoners pip install -e .然后…...

【LeetCode 算法】Maximum Absolute Sum of Any Subarray 任意子数组和的绝对值的最大值-前缀和

文章目录 Maximum Absolute Sum of Any Subarray 任意子数组和的绝对值的最大值问题描述&#xff1a;分析代码前缀和前缀和 Tag Maximum Absolute Sum of Any Subarray 任意子数组和的绝对值的最大值 问题描述&#xff1a; 给你一个整数数组 nums 。一个子数组 [ n u m s l ,…...

怎么建立大型语言模型

建立大型语言模型通常涉及以下主要步骤&#xff1a; 数据收集&#xff1a;收集大规模的文本数据作为模型的训练数据。可以从各种来源获取数据&#xff0c;如互联网、书籍、新闻文章等。数据的质量和多样性对于模型的性能至关重要。 数据预处理&#xff1a;对收集到的数据进行预…...

docker简介和安装

什么是docker&#xff1f; docker是基于Go语言编写的开源容器引擎&#xff0c;是操作系统级别的轻量级虚拟技术。主要用于应用打包、分发、部署。 打包&#xff1a;软件开发过程中&#xff0c;打包是将程序打包成软件包或者镜像的过程&#xff1b;在容器化程序中&#xff0c;打…...

记录问题: servlet获取项目包绝对路径

【2023-8-8 23:46:27 星期二】 如何获取在webapp下的路径?而不是target包下的webapp目录 比如这里应该获取到 F:\Tiam\Desktop\freemarker\freemarker-demo01\src\main\webapp 而readPath总是获取到 F:\Tiam\Desktop\freemarker\freemarker-demo01\target\freemarker-demo0…...

C语言文件操作基本方法

1、文件的分类 ANSI C 的缓冲文件系统 缓冲文件系统 缓冲文件系统是指&#xff0c;系统自动地在内存区为每个正在使用的文件开辟一个缓冲区。 从内存向磁盘输出数据时&#xff0c;必须首先输出到缓冲区中。待缓冲区装满后&#xff0c;再一起输出到磁盘文件中。 从磁盘文件向内…...

1987年5月10日晚上23-24点出生性格、运势和命运

出生在下午13-15点这一时段&#xff0c;从心理发展角度来看&#xff0c;最大的性格红利是“社交直觉”。这类人往往在很小的时候就展现出一种能力&#xff1a;能快速识别他人的情绪&#xff0c;并自然地调整自己的行为以促进和谐。这并非玄学&#xff0c;而是因为下午出生婴儿的…...

Llama3-8B微调显存优化实战:在单张RTX 4090上如何用PEFT+TRL跑通SFT?

Llama3-8B微调显存优化实战&#xff1a;单卡RTX 4090的极限挑战 当Meta发布Llama3系列模型时&#xff0c;8B版本因其在消费级硬件上的潜在可行性迅速成为开发者社区的焦点。但将这样一个拥有80亿参数的模型塞进24GB显存的显卡&#xff0c;就像试图把一头大象装进冰箱——理论上…...

告别Keil!用CLion+STM32CubeMX+OpenOCD打造你的现代化STM32开发环境(保姆级配置流程)

从Keil到CLion&#xff1a;STM32开发环境现代化升级实战指南 嵌入式开发领域正在经历一场工具链的革新浪潮。对于长期使用Keil这类传统IDE的开发者来说&#xff0c;CLion带来的现代化开发体验堪称降维打击——智能代码补全、精准跳转、安全重构&#xff0c;这些在通用软件开发中…...

SpringBoot+Vue体育赛事志愿者管理系统源码+论文

代码可以查看文章末尾⬇️联系方式获取&#xff0c;记得注明来意哦~&#x1f339; 分享万套开题报告任务书答辩PPT模板 作者完整代码目录供你选择&#xff1a; 《SpringBoot网站项目》1800套 《SSM网站项目》1500套 《小程序项目》1600套 《APP项目》1500套 《Python网站项目》…...

用LLM嵌入向量破解工业微缺陷检测的长尾难题

1. 项目概述&#xff1a;当大模型“看走眼”时&#xff0c;我们该怎么教它识别那些几乎看不见的异常&#xff1f;你有没有遇到过这样的情况&#xff1a;一个工业质检系统&#xff0c;对明显划痕、缺料、锈蚀这类“教科书式”缺陷识别率高达99%&#xff0c;可一旦面对0.3毫米宽的…...

警惕AI领域未经证实的技术传闻与虚构命名

我不能按照您的要求生成关于“TAI #200: Anthropic’s Mythos Capability Step Change and Gated Release”的博文内容。原因如下&#xff1a;该标题中出现的“Mythos”并非 Anthropic 官方公开发布或确认存在的模型、能力或产品名称。截至2024年7月&#xff0c;Anthropic 官方…...

YOLOv11养殖场羊群目标检测数据集-66张-sheep-1_3

YOLOv11养殖场羊群目标检测数据集 &#x1f4ca; 数据集基本信息 目标类别&#xff1a; [‘sheep-1’, ‘sheep-10’, ‘sheep-11’, ‘sheep-2’, ‘sheep-3’, ‘sheep-4’, ‘sheep-5’, ‘sheep-6’, ‘sheep-7’, ‘sheep-8’, ‘sheep-9’]中文类别&#xff1a;[‘羊-1’…...

Unity中用Sentis部署YOLOv8 Nano实现移动端实时目标检测

1. 为什么是YOLOv8 Nano Sentis&#xff1f;不是ONNX Runtime&#xff0c;也不是TensorRT&#xff1f;去年在做一个AR巡检项目时&#xff0c;我卡在物体检测环节整整三周。客户要求在中端安卓手机&#xff08;骁龙665&#xff09;上实现每秒15帧以上的实时检测&#xff0c;同时…...

Selenium Cookie复用登录态实战指南

1. 这不是“绕过”&#xff0c;而是“复用登录态”——先厘清一个关键认知误区很多人看到“Selenium通过cookie绕过验证码”这个标题&#xff0c;第一反应是&#xff1a;又一个黑灰产技巧&#xff1f;能省事就上&#xff1f;但我在电商、金融、SaaS类项目里带团队做自动化测试近…...

基于java的畅阅读系统小程序设计与实现(源码+数据库+文档)

畅阅读系统小程 目录 基于java的畅阅读系统小程序设计与实现 一、前言 二、系统功能设计 三、系统实现 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌️大厂码农|毕设布道师&a…...