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

leecode算法--每日一题1

二分查找

给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。

前提条件必须满足: 目标数组必须是有序数组

所以查找操作之前必须借助排序算法进行排序

function binarySearch(arr, target) {if (typeof arr !== "object" && !Array.isArray(arr)) return -1;let left = 0,right = arr.length - 1;while (left <= right) {let mid = Math.floor((right + left) / 2); //(1)if (arr[mid] === target) {return mid;} else if (arr[mid] > target) {right = mid - 1;} else {left = mid + 1;}}return -1;
}const arr = [1, 2, 3, 4, 5, 69, 100];// const ret = binarySearch(arr, 69); //5
// const ret = binarySearch(arr, 100); //6
const ret = binarySearch(arr, 2); //1console.log(ret);

注意注释(1)那里是不严谨的写法
严谨的写法如下

 let mid = Math.floor((right - left) / 2) + left;

right + left有可能超出js中的数值最大值。这样写就可以保证查询的数据任意大

相关文章:

leecode算法--每日一题1

二分查找 给定一个 n 个元素有序的&#xff08;升序&#xff09;整型数组 nums 和一个目标值 target &#xff0c;写一个函数搜索 nums 中的 target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回 -1。 前提条件必须满足&#xff1a; 目标数组必须是有序数组 所以…...

LViT:语言与视觉Transformer在医学图像分割

论文链接&#xff1a;https://arxiv.org/abs/2206.14718 代码链接&#xff1a;GitHub - HUANGLIZI/LViT: This repo is the official implementation of "LViT: Language meets Vision Transformer in Medical Image Segmentation" (IEEE Transactions on Medical I…...

蓝桥杯上岸每日N题 第五期(山)!!!

蓝桥杯上岸每日N题第五期 ❗️ ❗️ ❗️ 同步收录 &#x1f447; 蓝桥杯Java 省赛B组(初赛)填空题 大家好 我是寸铁&#x1f4aa; 冲刺蓝桥杯省一模板大全来啦 &#x1f525; 蓝桥杯4月8号就要开始了 &#x1f64f; 距离蓝桥杯省赛倒数第3天 ❗️ ❗️ ❗️ 还没背熟模…...

IDEA Writing classes... 比较慢

IDEA配置修改如下&#xff1a; 1、File -> Settings… 2、Build&#xff0c;Execution&#xff0c;Deployment -> Compiler Build process heap size 配置为 20483、Build&#xff0c;Execution&#xff0c;Deployment -> Compiler -> ActionScript & Flex C…...

opencv中轮廓相关属性

一、介绍 findContours() &#xff1a;The function retrieves contours from the binary image。 二、代码 void main() {Mat src imread("match00.bmp", IMREAD_GRAYSCALE);Mat mask;threshold(src, mask, 128, 255, cv::THRESH_BINARY_INV);Mat element cv::g…...

Leetcode 144. 二叉树的前序遍历

题目描述 题目链接&#xff1a;https://leetcode.cn/problems/binary-tree-preorder-traversal/description/ 代码实现 class Solution {List<Integer> l new ArrayList<>();public List<Integer> preorderTraversal(TreeNode root) {preoder(root);re…...

医学影像PACS系统源码:多功能服务器和阅片系统

PACS系统是以最新的IT技术为基础&#xff0c;遵循医疗卫生行业IHE/DICOM3.0和HL7标准&#xff0c;开发的多功能服务器和阅片系统。通过简单高性能的阅片功能&#xff0c;支持繁忙时的影像诊断业务&#xff0c;拥有保存影像的院内Web传输及离线影像等功能&#xff0c;同时具有备…...

php 生成连续递增的Excel列索引 可以控制多少列

今天遇到需要生成对应的下拉&#xff0c;下拉的类 需要PHP 输出一个数组 如 A、B、C、D 到Z 列后 Excel 的列就变成 AA 、AB、 AC 依次类推 查询得知 Excel 最大列数 16384 最大行数 1048576 下面演示3000列或行 <?php$idx [idx > 0];for ($i …...

Openstack等私有云

1 OpenStack 计算&#xff1a;部署管理虚拟机存储&#xff1a;块存储 Cinder 和 对象存储 Swift网路&#xff1a;管理网络身份&#xff1a;管理用户和权限镜像&#xff1a;管理镜像用于快速部署新的虚拟机仪表盘&#xff1a;Web界面 2 RAID 如果使用的软件已经在多个硬件设备…...

MySQL 8.0详细安装配置教程

一. 前言 MySQL是目前最为流行的开源数据库产品&#xff0c;是完全网络化跨平台的关系型数据库系统。它起初是由瑞典MySQLAB公司开发&#xff0c;后来被Oracle公司收购&#xff0c;目前属于Oracle公司。因为开源&#xff0c;所以任何人都能从官网免费下载MySQL软件&#xff0c…...

pytest 入门

1,安装pytest 打开终端或命令提示符窗口,在终端中运行以下命令来安装pytest: pip install pytestpip install -i https://pypi.tuna.tsinghua.edu.cn/simple pytest 确保您的系统上已经安装了Python。您可以在终端中运行以下命令来检查Python的安装情况: pytest --version…...

分布式缓存数据一致性-解决方案

如果是用户维度&#xff0c;并发几率小&#xff08;用户修改订单&#xff09;。不需要考虑一致性问题&#xff0c;缓存数据加上过期时间&#xff0c;每隔一段时间出发读数据&#xff0c;主动更新缓存即可。&#xff08;缓存过期删除数据&#xff0c;触发读请求主动更新&#xf…...

Java设计模式-享元模式

享元模式 1.享元模式含义 享元模式&#xff0c;运用共享技术有效地支持大量细粒度的对象。 其实享元模式很好理解&#xff0c;就是共享元数据的意思。比如一个小狗类对象&#xff0c;里面的属性有头&#xff0c;耳朵&#xff0c;眼睛&#xff0c;毛色这几个属性&#xff0c;…...

idea模块的pom.xml被划横线,不识别的解决办法

目录 问题&#xff1a; 解决办法&#xff1a; 1.打开设置 2. 取消勾选 3.点击确认 4.解决 问题提出&#xff1a; 写shi山的过程中&#xff0c;给模块取错名字了&#xff0c;改名的时候不知道点到了什么&#xff0c;一个模块的pom.xml变成灰色了&#xff0…...

ffmpeg 中 av_log 是怎样工作的?

---------------------------------------- author: hjjdebug date: 2023年 07月 27日 星期四 14:56:38 CST descriptor: ffmpeg 中 av_log 是怎样工作的? ---------------------------------------- av_log 功能其实只是添加了颜色,LOG级别,及log上下文名称,没有添加时间,函…...

HTML+CSS+JavaScript:轮播图自动播放

一、需求 轮播图如下图所示&#xff0c;需求是每隔一秒轮播图自动切换一次 二、代码素材 以下是缺失JS部分的代码&#xff0c;感兴趣的小伙伴可以先自己试着写一写 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /&…...

python 自动化数据提取之正则表达式

>>>> 前 言 我们在做接口自动化的时候&#xff0c;处理接口依赖的相关数据时&#xff0c;通常会使用正则表达式来进行提取相关的数据&#xff0c;今天在这边和大家聊聊如何在python中使用正则表达式。 正则表达式&#xff0c;又称正规表示式、正规表示法、正规…...

分布式事务之本地事务

&#x1f680; 分布式事务 &#x1f680; &#x1f332; AI工具、AI绘图、AI专栏 &#x1f340; &#x1f332; 如果你想学到最前沿、最火爆的技术&#xff0c;赶快加入吧✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;CSDN-Java领域优质创作者&#x1f3c6;&…...

PyTorch 初级教程:构建你的第一个神经网络

PyTorch 是一个在研究领域广泛使用的深度学习框架&#xff0c;提供了大量的灵活性和效率。本文将向你介绍如何使用 PyTorch 构建你的第一个神经网络。 一、安装 PyTorch 首先&#xff0c;我们需要安装 PyTorch。PyTorch 的安装过程很简单&#xff0c;你可以根据你的环境&…...

SpringBoot使用MyBatis Plus + 自动更新数据表

1、Mybatis Plus介绍 Mybatis&#xff0c;用过的都知道&#xff0c;这里不介绍&#xff0c;mybatis plus只是在mybatis原来的基础上做了些改进&#xff0c;增强了些功能&#xff0c;增强的功能主要为增加更多常用接口方法调用&#xff0c;减少xml内sql语句编写&#xff0c;也可…...

新手福音:用快马生成你的第一个c盘自动清理python脚本

今天想和大家分享一个特别实用的Python小工具——C盘自动清理脚本。作为一个刚接触编程的新手&#xff0c;我发现清理C盘空间是个常见需求&#xff0c;但手动操作既麻烦又容易误删重要文件。于是我用InsCode(快马)平台生成了一个简单实用的脚本&#xff0c;整个过程特别适合编程…...

3步快速上手!终极缠论量化工具:基于TradingView本地SDK的几何交易可视化完整指南

3步快速上手&#xff01;终极缠论量化工具&#xff1a;基于TradingView本地SDK的几何交易可视化完整指南 【免费下载链接】chanvis 基于TradingView本地SDK的可视化前后端代码&#xff0c;适用于缠论量化研究&#xff0c;和其他的基于几何交易的量化研究。 缠论量化 摩尔缠论 缠…...

3步打造高效右键菜单:让Windows操作提速50%

3步打造高效右键菜单&#xff1a;让Windows操作提速50% 【免费下载链接】ContextMenuManager &#x1f5b1;️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否也曾在右键点击文件时&#xff0c;面对长达20个选项…...

一键捕获完整网页:Full Page Screen Capture 高效解决方案

一键捕获完整网页&#xff1a;Full Page Screen Capture 高效解决方案 【免费下载链接】full-page-screen-capture-chrome-extension One-click full page screen captures in Google Chrome 项目地址: https://gitcode.com/gh_mirrors/fu/full-page-screen-capture-chrome-e…...

光流法在气象雷达中的应用:从原理到外推实践

光流法在气象雷达中的应用&#xff1a;从原理到外推实践 气象雷达作为现代气象监测的核心工具&#xff0c;其回波数据蕴含着丰富的天气系统动态信息。如何从这些看似静态的图像序列中提取运动规律&#xff0c;进而预测未来短时内的天气变化&#xff0c;一直是气象学界和工程界关…...

别再为联合仿真头疼了!手把手教你用Amesim 2019和Matlab 2022b配置S-Function(Win10环境)

从零搭建Amesim与Matlab联合仿真环境&#xff1a;避坑指南与实战技巧 联合仿真技术已成为多物理场系统设计的黄金标准&#xff0c;但配置过程却让无数工程师在深夜的办公室里抓狂——编译器版本冲突、环境变量设置错误、接口编译失败&#xff0c;每一个环节都可能成为项目进度的…...

问道1.6夏日清风单机虚拟机版|200+礼包加持·最强方官1.6完整体验

温馨提示&#xff1a;文末有联系方式【全新封装&#xff5c;问道1.6夏日清风单机虚拟机版】 本版本基于稳定虚拟机环境深度优化&#xff0c;完美集成‘夏日清风’主内容与当前最成熟的‘最强方官1.6’核心框架&#xff0c;运行零冲突、免配置&#xff0c;开箱即玩。【超值&…...

汽车动力性能计算工具插件:一键测算电机需求与整车性能,工程师专属轻量级辅助软件

温馨提示&#xff1a;文末有联系方式插件核心功能亮点 本款汽车动力性系统专用计算小工具&#xff0c;可精准推演电机功率与扭矩需求&#xff0c;同步输出整车加速性能、最大爬坡度、最高稳定车速等关键动力参数&#xff0c;覆盖常规工况与典型驱动场景&#xff0c;满足前期方案…...

IQR四分位数法是什么?

一、核心概念&#xff1a;四分位数与IQR1. 四分位数&#xff08;Quartiles&#xff09;将一组有序数据&#xff08;从小到大排列&#xff09;划分为4个相等部分的三个关键分割点&#xff0c;分别记为&#xff1a;Q1&#xff08;第一四分位数&#xff0c;25%分位数&#xff09;&…...

SpringBoot集成TTL实现Feign与线程池的TraceId无缝传递(实战优化版)

1. 问题背景与核心挑战 在分布式系统中&#xff0c;日志链路追踪是排查问题的关键手段。想象一下这样的场景&#xff1a;用户请求从网关进入&#xff0c;经过多个微服务处理&#xff0c;每个服务又可能调用其他服务或使用线程池异步处理。当出现问题时&#xff0c;如何快速定位…...