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

【JS】二分查找

题目

步骤

  1. 初始化指针:定义 left 和 right 两个指针,分别指向数组的起始位置和末尾位置,确定查找范围。
  2. 进入循环:只要 left 小于等于 right,就继续执行循环,因为此时查找范围不为空。
  3. 计算中间索引:通过公式 left + Math.floor((right - left) / 2) 计算中间位置 mid,以找到当前查找范围的中间元素。
  4. 比较与调整:将中间元素 nums[mid] 与目标值 target 进行比较。如果 nums[mid] 大于 target,说明目标值在中间元素的左侧,将 right 指针更新为 mid - 1,缩小查找范围到左半部分;如果 nums[mid] 小于 target,说明目标值在中间元素的右侧,将 left 指针更新为 mid + 1,缩小查找范围到右半部分;如果 nums[mid] 等于 target,则表示找到了目标值,直接返回 mid
  5. 查找失败处理:当循环结束时,如果仍未找到目标值,说明目标值不在数组中,返回 -1

示例代码 

var search = function (nums, target) {var left = 0, right = nums.length - 1;while (left <= right) {var mid = left + Math.floor((right - left) / 2);if (nums[mid] > target) {right = mid - 1;} else if (nums[mid] < target) {left = mid + 1;} else {return mid;}}return -1;
};

欢迎指正! 

相关文章:

【JS】二分查找

题目 步骤 初始化指针&#xff1a;定义 left 和 right 两个指针&#xff0c;分别指向数组的起始位置和末尾位置&#xff0c;确定查找范围。进入循环&#xff1a;只要 left 小于等于 right&#xff0c;就继续执行循环&#xff0c;因为此时查找范围不为空。计算中间索引&#xff…...

Mamba模型

为什么要提出mamba模型&#xff1f; transformer特点&#xff1a;训练快&#xff0c;推理慢&#xff0c;计算成本O&#xff08;n*n&#xff09; Rnn的特点&#xff1a;训练慢&#xff0c;推理快&#xff0c;容易遗忘 其实很容易理解&#xff0c;因为RNN的输入只包含前一个隐…...

人工智能通识速览(Part4. 评估指标)

四、评估指标 1.回归模型 均方误差&#xff08;MSE&#xff09; 优点&#xff1a;数学性质良好&#xff0c;计算简单&#xff0c;对误差的惩罚力度较大&#xff0c;能很好地反映模型预测值与真实值之间的平均差异程度&#xff0c;便于比较不同模型的性能。缺点&#xff1a;由…...

IT运维服务方案

一、服务目标 IT 运维服务致力于构建稳固、高效且智能的信息系统生态&#xff0c;为客户的业务运营筑牢数字化根基。凭借前沿的主动式维护策略&#xff0c;运用大数据分析、智能监控等技术手段&#xff0c;提前洞察系统隐患&#xff0c;在萌芽阶段化解潜在故障。同时&#xff0…...

【简历全景认知2】电子化时代对简历形式的降维打击:从A4纸到ATS的生存游戏

一、当简历遇上数字洪流:传统形式的式微 在1990年代,一份排版精美的纸质简历还能让HR眼前一亮;但今天,超过75%的 Fortune 500 企业使用ATS(Applicant Tracking System)进行初筛,未优化的简历可能在5秒内就会沦为数字废土。这种变迁本质上符合「技术接纳生命周期」理论—…...

LLM面试题七

NLP算法工程师面试题8道|含解析 分类场景下bert和gptprompt的方式哪种会有更好效果&#xff0c;为什么&#xff1f; 在分类场景下&#xff0c;BERT比GPT更适合用于建模&#xff0c;因为BERT的结构中包含了双向的Transformer编码器&#xff0c;而GPT的结构中只包含单向的Transf…...

Semaphore

关于作者&#xff1a; CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP&#xff0c;带领团队单日营收超千万。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业化变现、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览…...

视频插帧EMAVFI:extracting motion and appearance via inter-frame attention for video

文章目录 EMAVFI:extracting motion and appearance via inter-frame attention for efficient video frame interpolation1.核心概述2.帧间注意力机制为什么可以表示运动信息3.网络架构4.dataset类5.demo推理和训练代码6.总结 EMAVFI:extracting motion and appearance via in…...

⑨数据中心-M-LAG技术配置

华三数据中心网络是指华三提供的专门设计用于数据中心环境的网络解决方案。这种网络通常具有高性能、可扩展性和可靠性&#xff0c;旨在支持大规模数据中心的需求。华三数据中心网络解决方案通常包括以下特点&#xff1a; 1. 高带宽&#xff1a;支持高密度数据中心环境中大量网…...

永磁同步电机无速度算法--基于HOPLL的滑模观测器

一、原理介绍 传统PLL算法为二阶系统&#xff0c;其实现是基于转速变化变化缓慢的假设&#xff0c;因此在转速频繁出现动态变化时会导致动态性能不佳。为改善系统动态性能&#xff0c;将转速微分量引入PLL中&#xff0c;作为附加状态变量&#xff0c;与电角速度及转速共同构成…...

【Linux网络】网络套接字socket

&#x1f308;个人主页&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343 &#x1f525; 系列专栏&#xff1a;https://blog.csdn.net/qinjh_/category_12891150.html 目录 Socket 编程预备 理解源 IP 地址和目的 IP 地址 认识端口号 端口号范围划分…...

ubuntu wifi配置(命令行版本)

1、查询当前设备环境的wifi列表 nmcli dev wifi list2、连接wifi nmcli dev wifi connect "MiFi-SSID" password "Password" #其中MiFi-SSID是wifi的密码&#xff0c;Password是wifi的密码3、查看连接情况 nmcli dev status...

配环境的经验

pip install -e . 该命令用于以“编辑模式”&#xff08;也称为开发模式&#xff09;安装当前目录下的 Python 包&#xff0c;比如包含有 setup.py、setup.cfg 或 pyproject.toml 文件的项目-e 是 --editable 的简写。以编辑模式安装时&#xff0c;pip 会在你的 Python 环境中创…...

STM32cubmax配置STM32407VET6,实现网络通信

文章目录 一、开发准备1、硬件准备2、软件准备 二、STM32CubeMX工程配置步骤1、创建新工程 三、外设配置步骤1&#xff09;调试接口&#xff08;SWD&#xff09;配置2&#xff09;时钟配置3&#xff09;串口&#xff08;USART&#xff09;配置4&#xff09;IO口配置&#xff08…...

LeetCode 热题 100_完全平方数(84_279_中等_C++)(动态规划(完全背包))

LeetCode 热题 100_完全平方数&#xff08;84_279&#xff09; 题目描述&#xff1a;输入输出样例&#xff1a;题解&#xff1a;解题思路&#xff1a;思路一&#xff08;动态规划&#xff08;完全背包&#xff09;&#xff09;&#xff1a; 代码实现代码实现&#xff08;思路一…...

【C++】vector的底层封装和实现

目录 目录前言基本框架迭代器容量第一个测试&#xff0c;野指针异常第二轮测试&#xff0c;浅拷贝的问题 元素访问修改操作push_backinsert迭代器失效问题 erase 默认成员函数构造函数双重构造引发调用歧义 拷贝构造赋值重载析构函数 源码end 目录 前言 废话不多说&#xff0…...

AI前端组件库Ant DesIgn X

Ant Design X AI&#xff1a;体验新秩序 Ant Design 团队精心打造 RICH 设计范式&#xff0c;为 AI 界面提供卓越解决方案&#xff0c;引领智能交互新体验。 设计语言与理论 官网&#xff1a; Ant Design X - 轻松打造 AI 驱动的界面。 AI 设计范式 —— RICH 是我们在蚂蚁…...

BGP路由协议之解决 IBGP 水平分割带来的问题

主要有以下 3 种方案&#xff1a; 全互联 &#xff1a;配置量大、耗费资源联邦&#xff1a; 配置量大、邻居会重建、中断时间较长RR 路由反射器&#xff1a;目前主流使用、简单、好用 联邦 IBGP 水平分割问题用与防止 AS 内部产生环路&#xff0c;在很大程度上杜绝了 IBGP 路…...

基于Java的人脸识别在线考试系统(jsp+springboot+mysql8.x)

基于Java的人脸识别在线考试系统(jspspringbootmysql8.x) 在线考试系统提供全面的考试管理和用户管理功能。登录界面支持管理员、教师和学生三种身份验证&#xff0c;确保不同用户访问相应的功能模块。系统自动组卷功能允许管理员根据不同科目和题型&#xff0c;如单选题、多选…...

如何对LLM大型语言模型进行评估与基准测试

基础概念 这几年&#xff0c;随着生成式 AI 和大型语言模型&#xff08;LLMs&#xff09;的兴起&#xff0c;AI 领域整体迎来了一波大爆发。 随着各种基于 LLM 的应用程序在企业里落地&#xff0c;人们开始需要评估不同推理部署方案的性价比。 LLM 应用的部署成本&#xff0c;…...

C语言内存函数和数据在内存的存储

一、内存操作函数深度解析 函数名原型核心特性典型应用场景注意事项memcpyvoid* memcpy(void* dest, const void* src, size_t num)内存块无重叠复制&#xff0c;性能高数组拷贝、结构体复制1. 必须确保目标空间足够 2. 不支持重叠内存&#xff08;用memmove替代&#xff09; …...

ChatGPT之智能驾驶问题讨论

ChatGPT之智能驾驶问题讨论 1. 源由2. 问题&#xff1a;2.1 智能驾驶级别定义&#x1f697; L2&#xff08;部分自动化&#xff0c;Partial Automation&#xff09;&#x1f916; L3&#xff08;有条件自动化&#xff0c;Conditional Automation&#xff09;&#x1f6f8; L4&a…...

【PalladiumZ2 使用专栏 1 -- 波形 trigger 抓取详细介绍】

文章目录 Palladium Z2 OverviewPalladium 波形抓取Palladium 波形存放文件创建Palladium Trigger 断点设置Palladium 加探针并 dumpPalladium 波形查看 Palladium Z2 Overview Cadence Palladium Z2 是 Cadence 推出的企业级硬件仿真加速平台&#xff0c;旨在应对复杂 SoC 设…...

elasticsearch 8设置验证登录查询

最近总是困扰于9200网络勒索,老是在捣乱,动不动给我清理了index,实在是费劲,今天研究了下config配置,设置ca验证。 以下是完整的步骤和配置,确保生成的证书文件与elasticsearch.yml的配置一致: 1. 生成CA证书 运行以下命令生成CA证书:让输入账号或密码请直接回车。 …...

为什么使用了CDN源服务器需要关闭防火墙?

在网站运营过程中&#xff0c;不少站长会遇到这样的困惑&#xff1a;当使用 CDN 源服务器时&#xff0c;好像就得关闭源服务器的防火墙&#xff0c;不然就状况百出。这背后究竟是什么原因呢&#xff1f; 当你在浏览网页时&#xff0c;要是看到 “502 - 服务暂时不可用” 的提…...

Android 学习之 Navigation导航

1. Navigation 介绍 Navigation 组件 是 Android Jetpack 的一部分&#xff0c;用于简化应用内导航逻辑&#xff0c;支持 Fragment、Activity 和 Compose 之间的跳转。核心优势&#xff1a; 单 Activity 架构&#xff1a;减少 Activity 冗余&#xff0c;通过 Fragment 或 Com…...

初识 Three.js:开启你的 Web 3D 世界 ✨

3D 技术已经不再是游戏引擎的专属&#xff0c;随着浏览器技术的发展&#xff0c;我们完全可以在网页上实现令人惊艳的 3D 效果。而 Three.js&#xff0c;作为 WebGL 的封装库&#xff0c;让 Web 3D 的大门向更多开发者敞开了。 这是我开启这个 Three.js 专栏的第一篇文章&…...

PyTorch 笔记

简介与安装 PyTorch 是一个开源的 Python 机器学习库&#xff0c;基于 Torch 库&#xff0c;底层由C实现&#xff0c;应用于人工智能领域&#xff0c;如计算机视觉和自然语言处理。 PyTorch 最初由 Meta Platforms 的人工智能研究团队开发&#xff0c;现在属 于Linux 基金会的…...

day24学习Pandas库

文章目录 三、Pandas库4.函数计算3遍历3.1.遍历Series对象3.2.遍历DataFrame对象 4排序4.1 sort_index4.2 sort_values 5.去重drop_duplicates6.先分组在计算6.1 groupby6.2 filter过滤 7.合并未完待续.. 三、Pandas库 4.函数计算 3遍历 3.1.遍历Series对象 在讲解Series部…...

AI日报 - 2025年4月8日

AI日报 - 2025年4月8日 &#x1f31f; 今日概览&#xff08;60秒速览&#xff09; ▎&#x1f916; 模型进展 | Llama 4发布引爆讨论 (性能、应用、部署、训练争议)&#xff0c;OpenAI保持高速迭代&#xff0c;香港大学推Dream 7B扩散模型。 Meta Llama 4 Scout & Maveric…...

Linux学习笔记(2) 命令基础:从概念到实践(期末,期中复习笔记全)

前言 一、认识命令行与命令 二、Linux 命令的基础格式 三、命令示例解析 &#xff08;1&#xff09;ls -l /home/itheima &#xff08;2&#xff09;cp -r test1 test2 四结语 前言 在 Linux 系统的世界里&#xff0c;命令行是与系统交互的重要方式。熟练掌握 Linux 命令…...

langgraph简单Demo4(checkpoint检查点)

在 langgraph 里&#xff0c;检查点&#xff08;checkpoint&#xff09;是一项重要的功能&#xff0c;它能够记录工作流在执行过程中的中间状态。当工作流因某些原因中断时&#xff0c;可以从检查点恢复继续执行&#xff0c;避免从头开始&#xff0c;提升效率。 示例&#xff…...

【题解】AtCoder AT_abc400_c 2^a b^2

题目大意 我们定义满足下面条件的整数 X X X 为“好整数”&#xff1a; 存在一个 正整数 对 ( a , b ) (a,b) (a,b) 使得 X 2 a ⋅ b 2 X2^a\cdot b^2 X2a⋅b2。 给定一个正整数 N N N&#xff08; 1 ≤ N ≤ 1 0 18 1\le N\le 10^{18} 1≤N≤1018&#xff09;&#xff…...

七种驱动器综合对比——《器件手册--驱动器》

目录 九、驱动器 概述 定义 功能 分类 1. 按负载类型分类 2. 按功能特性分类 工作原理 优势 应用领域 详尽阐述 1 隔离式栅极驱动器 定义 工作原理 应用场景 优势 2 变压器驱动器 定义 工作原理 应用场景 优势 设计注意事项 3 LED驱动 定义 功能与作用 应用场景 设计…...

GStreamer开发笔记(一):GStreamer介绍,在windows平台部署安装,打开usb摄像头对比测试

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://blog.csdn.net/qq21497936/article/details/147049923 长沙红胖子Qt&#xff08;长沙创微智科&#xff09;博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、O…...

西湖大学团队开源SaProt等多款蛋白质语言模型,覆盖结构功能预测/跨模态信息搜索/氨基酸序列设计等

2025 年 3 月 22—23 日&#xff0c;上海交通大学「AI 蛋白质设计峰会」正式举行。 本次峰会汇聚了来自清华大学、北京大学、复旦大学、浙江大学、厦门大学等知名高校的 300 多位专家学者&#xff0c;以及 200 余位行业领军企业代表和技术研发人员&#xff0c;深入探讨了 AI 在…...

ansible+docker+docker-compose快速部署4节点高可用minio集群

目录 github项目地址 示例服务器列表 安装前 修改变量文件group_vars/all.yml 修改ansible主机清单 修改setup.sh安装脚本 用法演示 安装后验证 github项目地址 https://github.com/sulibao/ansible_minio_cluster.git 示例服务器列表 安装前 修改变量文件group_var…...

说话人分离中的聚类方法:深入解析Agglomerative聚类、KMeans聚类和Oracle聚类

说话人分离&#xff08;Speaker Diarization&#xff09;是将音频流根据说话人身份划分为同质片段的过程。这一过程中的关键步骤是聚类&#xff0c;即将说话人嵌入&#xff08;embeddings&#xff09;分组为不同的簇&#xff0c;每个簇代表一个独特的说话人。在pyannote.audio管…...

蓝桥杯真题——前缀总分、遗迹

蓝桥杯2024年第十五届省赛真题-前缀总分 题目描述 给定 n 个由小写英文字母组成的字符串 s1, s2, , sn &#xff0c;定义前缀总分为V ∑i<j P(si, sj) &#xff0c;其中 P(si, sj) 表示 si, sj 的最长公共前缀的长度。 小蓝可以选择其中一个字符串&#xff0c;并修改其…...

性能比拼: MySQL vs PostgreSQL

本内容是对知名性能评测博主 Anton Putra MySQL vs PostgreSQL Performance Benchmark (Latency - Throughput - Saturation) 内容的翻译与整理, 有适当删减, 相关指标和结论以原作为准 MySQL vs PostgreSQL 数据库性能对比** 在本内容中&#xff0c;我们将对比 MySQL 和 Pos…...

TypeScript 中的 infer 关键字用途

infer 是 TypeScript 中的高级类型关键字&#xff0c;主要用于条件类型中推断类型。它允许我们在条件类型的 extends 子句中声明一个类型变量&#xff0c;然后在该条件类型的 true 分支中使用这个推断出的类型。 1. 基本语法 type SomeType<T> T extends infer U ? U…...

关于Spring MVC中@RequestParam注解的详细说明,用于在前后端参数名称不一致时实现参数映射。包含代码示例和总结表格

以下是关于Spring MVC中RequestParam注解的详细说明&#xff0c;用于在前后端参数名称不一致时实现参数映射。包含代码示例和总结表格&#xff1a; 1. 核心作用 RequestParam用于显式绑定HTTP请求参数到方法参数&#xff0c;支持以下场景&#xff1a; 参数名不一致&#xff1…...

Spring Boot中Spring MVC相关配置的详细描述及表格总结

以下是Spring Boot中Spring MVC相关配置的详细描述及表格总结&#xff1a; Spring MVC 配置项详解 1. 异步请求配置 spring.mvc.async.request-timeout 描述&#xff1a;设置异步请求的超时时间&#xff08;单位&#xff1a;毫秒&#xff09;。默认值&#xff1a;未设置&…...

Shell脚本编程之正则表达式

一、概念 在 Shell 脚本中&#xff0c;正则表达式是一种强大且常用的文本处理工具&#xff0c;它可以用来匹配、搜索、替换和截取字符串。 正则表达式是由一些字符去描述规则&#xff0c;在正则表达式中有两类字符 (1)元字符(Meta Character)&#xff1a;Shell 环境中具有特殊含…...

spring-ai-openai调用Xinference1.4.1报错

1、Xinference 报错logs 此处是调用 /v1/chat/completions 接口 2025-04-06 15:48:51 xinference | return await dependant.call(**values) 2025-04-06 15:48:51 xinference | File "/usr/local/lib/python3.10/dist-packages/xinference/api/restful_api.py", …...

XC7K160T-2FFG676I Kintex‑7系列 Xilinx 赛灵思 FPGA 详细技术规格

XC7K160T-1FFG676I XC7K160T-1FFG676C XC7K160T-2FFG676C 1. 基本概述 XC7K160T-2FFG676I 属于 Xilinx Kintex‑7 系列 FPGA&#xff0c;该系列芯片采用 28nm &#xff08;HKMG&#xff09;工艺制造&#xff0c;旨在提供高性能与低功耗的平衡。该芯片主要面向对高速数据处理、…...

C++学习之udp通信

1.UDP特点 c /* udp 传输层协议, 和tcp是一样的 特点: 面向无连接的, 不安全的, 报式传输协议 1. 无连接: udp通信的时候不需要connect 1). 通信不需要建立连接 2). 如果想给对方发送数据, 只需要指定对方的IP和端口 2. udp会丢包 1). 数…...

2020年-全国大学生数学建模竞赛(CUMCM)试题速浏、分类及浅析

2020年-全国大学生数学建模竞赛(CUMCM)试题速浏、分类及浅析 全国大学生数学建模竞赛(China Undergraduate Mathematical Contest in Modeling)是国家教委高教司和中国工业与应用数学学会共同主办的面向全国大学生的群众性科技活动,目的在于激励学生学习数学的积极性,提高学…...

【数据标准】数据标准化实施流程与方法-保障机制篇

导读&#xff1a;1、数据标准化保障机制&#xff08;组织架构、协作流程&#xff09;是​​战略落地的基石​​&#xff0c;确保责权分明与资源协同&#xff1b;2、数据标准化制度建设&#xff08;政策、标准、工具&#xff09;构建了​​统一治理框架​​&#xff0c;规范数据…...

ZLMediaKit部署与配置

ZLMediaKit编译 # 安装编译器 sudo apt install build-essential cmake# 其它依赖库 sudo apt-get install libssl-dev libsdl-dev libavcodec-dev libavutil-dev ffmpeg git cd /usr/local/srcgit clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit.git cd ZLMediaKit# …...