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

每日一题 34在排序数组中查找元素的第一个和最后一个位置(二分查找)

题目

给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。

如果数组中不存在目标值 target,返回 [-1, -1]

你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。

示例 1:

输入:nums = [5,7,7,8,8,10], target = 8
输出:[3,4]

示例 2:

输入:nums = [5,7,7,8,8,10], target = 6
输出:[-1,-1]

示例 3:

输入:nums = [], target = 0
输出:[-1,-1]

题解

class Solution {public int[] searchRange(int[] nums, int target) {int start = lower_bounds(nums, target);if (start == nums.length || nums[start] != target) {//返回长度或者找不到目标值return new int[]{-1,-1};}//结束位置相当于满足条件>target的前一个数int end = lower_bounds(nums, target + 1) - 1;return new int[]{start,end};}private int lower_bounds(int[] nums, int target) {//闭区间写法二分int n = nums.length;int left = 0;int right = n - 1;while(left <= right) { //保证区间不为空 查找最后一个元素int mid = left + (right - left)/2;if (nums[mid] < target) {left = mid + 1;} else {right = mid - 1;}}return left; //返回值也可以写right+1}
}

相关文章:

每日一题 34在排序数组中查找元素的第一个和最后一个位置(二分查找)

题目 给你一个按照非递减顺序排列的整数数组 nums&#xff0c;和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target&#xff0c;返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。 示例 1&…...

Spring Boot Admin 环境搭建与基本使用

Spring Boot Admin 环境搭建与基本使用 一、Spring Boot Admin是什么二、提供了那些功能三、 使用Spring Boot Admin3.1搭建Spring Boot Admin服务pom文件yml配置文件启动类启动admin服务效果 3.2 common-apipom文件feignhystrix 3.3服务消费者pom文件yml配置文件启动类control…...

JVM之内存模型

1. Java内存模型 很多人将Java 内存结构与java 内存模型傻傻分不清&#xff0c;java 内存模型是 Java Memory Model&#xff08;JMM&#xff09;的意思。 简单的说&#xff0c;JMM 定义了一套在多线程读写共享数据时&#xff08;成员变量、数组&#xff09;时&#xff0c;对数据…...

音视频 vs2017配置FFmpeg

vs2017 ffmpeg4.2.1 一、首先我把FFmpeg整理了一下&#xff0c;放在C盘 二、新建空项目 三、添加main.cpp&#xff0c;将bin文件夹下dll文件拷贝到cpp目录下 #include<stdio.h> #include<iostream>extern "C" { #include "libavcodec/avcodec.h&…...

【项目管理】PMP备考宝典-第二章《环境》

第一节&#xff1a;概述 1.项目所处的组织环境 &#xff08;1&#xff09;事业环境因素&#xff08;EEFs&#xff09; 组织内部的事业环境因素&#xff1a; 企业都会有愿景、使命、价值观&#xff0c;这些决定了企业的发展方向。不忘初心&#xff0c;坚定地走自己的路&#…...

ELK 将数据流转换回常规索引

ELK 将数据流转换回常规索引 现象&#xff1a;创建索引模板是打开了数据流&#xff0c;导致不能创建常规索引&#xff0c;并且手动修改、删除索引模板失败 "reason" : "composable template [logs_template] with index patterns [new-pattern*], priority [2…...

jackson库收发json格式数据和ajax发送json格式的数据

一、jackson库收发json格式数据 jackson库是maven仓库中用来实现组织json数据功能的库。 json格式  json格式一个组织数据的字符文本格式&#xff0c;它用键值对的方式存贮数据&#xff0c;json数据都是有一对对键值对组成的&#xff0c;键只能是字符串&#xff0c;用双引号包…...

ubuntu安装和卸载CLion

安装 在https://www.jetbrains.com/clion/download/#sectionlinux下载相应版本的安装包&#xff0c;解压之后&#xff0c;找到解压文件夹中的bin文件夹运行./clion.sh 卸载 使用sudo rm -rf删除以下内容&#xff1b;并把刚刚解压的文件删掉 ~/.config/JetBrains ~/.local/s…...

Petrel解释二维浅地层数据

Petrel是斯伦贝谢开发的一款地质解释和建模软件&#xff0c;有点像地理信息系统的ArcGIS&#xff0c;主要用于数据分析和展示。它不是用来处理原始数据的&#xff0c;而是集成各种处理后的结果数据进行特征分析和目标拾取。当然&#xff0c;它也能读取原始数据&#xff0c;比如…...

分布式任务调度平台XXL-JOB使用

说明&#xff1a;分布式任务调度平台XXL-JOB&#xff0c;其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线&#xff0c;开箱即用&#xff08;官方语&#xff09;。 本文介绍使用XXL-JOB实现定时执行代码&#xff0c;可用于项目中…...

自考本科汉语言文学专业真的太难了吗

自考本科汉语言文学专业的难度和就业前景都需要综合考虑。目前&#xff0c;自考汉语言文学专业通过率是比较高的&#xff0c;与其他专业比较&#xff0c;难度会低一些&#xff0c;主要考验考生的记忆能力。 自学考试汉语言文学难度怎么样 本科自学考试汉语言文学难度还是比较简…...

STM32CubeMX之freeRTOS信号量

队列可以传输数据&#xff0c;任务之间和任务和中断之间&#xff0c;消息队列用来传数据&#xff0c;占用时间也长 但哦我们有时候只需要传递状态&#xff0c;只需要一个数值表示 如果我们屏幕按固定刷新&#xff0c;就会很消耗资源&#xff0c;如果我们数据变化了&#xff0…...

react-spring,一个react的动画库的使用

介绍 React Spring 是一个 spring physics based animation library 用于 React。它可以轻松地在 React 中实现弹性、渐变等动画效果。 使用 安装依赖&#xff1a; 使用npm&#xff1a; npm install react-spring 使用yarn&#xff1a; yarn add react-spring 导入和使用&a…...

Python中的lambda函数

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! Python中的lambda函数 在Python中&#xff0c;我们使用lambda关键字来声明一个匿名函数&#xff0c; 这就是为什么我们将它们称为“lambda函数”。 匿名函数是指没有声明函数名称的函数。 尽管它们在语法上看起来不同&a…...

Ajax入门

文章目录 axios体验axios-查询参数常用请求方法数据提交 axios错误处理 axios体验 引入axios库 使用axios语法 axios({url: 目标资源地址 }).then((result)>{// 对服务器返回的数据做后续处理 })完整实例 <!DOCTYPE html> <html lang"en"><head&g…...

MapReduce基础原理、MR与MPP区别

MapReduce概述 MapReduce&#xff08;MR&#xff09;本质上是一种用于数据处理的编程模型&#xff1b;MapReduce用于海量数据的计算&#xff0c;HDFS用于海量数据的存储&#xff08;Hadoop Distributed File System&#xff0c;Hadoop分布式文件系统&#xff09;。Hadoop MapR…...

位运算符让人反胃

A60 B13 二进制下 A00111100 B00001101 &&#xff08;同1为1&#xff09; A00111100 & B00001101 X00001100 X12 |&#xff08;有1为1&#xff09; A00111100 | B00001101 X00111101 X61 ^&#xff08;不同为1&#xff09; A00111100 ^ B00001101 X00110001 X49 ~&…...

selenium环境搭建

文章目录 1、下载谷歌浏览器2、下载谷歌驱动 1、下载谷歌浏览器 浏览器下载完成后&#xff0c;在任务管理器中禁止浏览器的自动更新。因为驱动版本必须和浏览器一致&#xff0c;如果浏览器更新了&#xff0c;驱动就用不起了。 2、下载谷歌驱动 谷歌驱动需要和谷歌浏览器版本…...

Python-OpenCV中的图像处理-霍夫变换

Python-OpenCV中的图像处理-霍夫变换 霍夫变换霍夫直线变换霍夫圆环变换 霍夫变换 霍夫(Hough)变换在检测各种形状的技术中非常流行&#xff0c;如果要检测的形状可以用数学表达式描述&#xff0c;就可以是使用霍夫变换检测它。即使要检测的形状存在一点破坏或者扭曲也是可以使…...

最强自动化测试框架Playwright(10)- 截图

截图 捕获屏幕截图并将其保存到文件中&#xff1a; page.screenshot(path"screenshot.png")可将页面截图保存为screen.png import osfrom playwright.sync_api import Playwright, expect, sync_playwrightdef run(playwright: Playwright) -> None:browser p…...

TensorFlow深度学习框架核心技术与实战指南

1. TensorFlow 深度学习框架概述 TensorFlow 是由 Google Brain 团队开发的开源机器学习框架&#xff0c;最初发布于2015年11月。作为当前最流行的深度学习工具之一&#xff0c;它采用数据流图&#xff08;Data Flow Graphs&#xff09;进行数值计算&#xff0c;其中节点&…...

Vue2项目里用wangeditor踩过的坑:从安装报错到图片上传,保姆级填坑指南

Vue2与wangeditor深度整合实战&#xff1a;从疑难排查到性能优化全指南 如果你正在Vue2项目中挣扎于wangeditor的集成问题&#xff0c;这篇文章将带你穿越那些令人头疼的报错和未解之谜。不同于基础教程&#xff0c;我们聚焦于那些官方文档没细说、社区讨论不充分的实际痛点。 …...

3DMAX插件避坑指南:Geometry Projection几何投影安装后没反应?可能是你的‘标准基本体’没转换

3DMAX插件避坑指南&#xff1a;Geometry Projection几何投影安装后没反应&#xff1f;可能是你的‘标准基本体’没转换 当你第一次在3DMAX中安装Geometry Projection插件时&#xff0c;那种期待感是难以言喻的。这个能够将对象顶点精确投影到目标表面的工具&#xff0c;本应成…...

魔兽争霸3智能优化革命:一键解锁极致游戏体验

魔兽争霸3智能优化革命&#xff1a;一键解锁极致游戏体验 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为经典游戏在现代硬件上表现不佳而烦恼吗…...

mysql如何防止SQL注入攻击_mysql参数化查询与转义

...

统计学习与不确定性量化在AI可靠性中的应用

1. 统计学习&#xff1a;AI系统可靠性的理论基石在2014年的ImageNet竞赛中&#xff0c;一个看似简单的实验震惊了整个AI社区——研究者们发现&#xff0c;只需对输入图像添加人眼无法察觉的微小扰动&#xff0c;就能让当时最先进的图像分类模型产生完全错误的预测。这个现象后来…...

爱奇艺“艺人库”风波观察:与其情绪化宣泄 不如积极拥抱AI浪潮

雷递网 雷建平 4月22日爱奇艺日前宣布超百名艺人入驻AI平台纳逗Pro的艺人库&#xff0c;一时间网上卷起千层。 “爱奇艺”及“爱奇艺疯了”等话题词屡次登上微博热搜及细分话题榜首。其实&#xff0c;AI时代的来临&#xff0c;各行各业无不受其影响&#xff0c;何止影视产业。在…...

学工平台让学生请假告别繁琐,移动审批随时处理

✅作者简介&#xff1a;合肥自友科技 &#x1f4cc;核心产品&#xff1a;智慧校园平台(包括教工管理、学工管理、教务管理、考务管理、后勤管理、德育管理、资产管理、公寓管理、实习管理、就业管理、离校管理、科研平台、档案管理、学生平台等26个子平台) 。公司所有人员均有多…...

2026年AI抢人大战:这5个高薪岗位,你准备好了吗?

&#x1f525;最近科技圈最火的话题&#xff0c;非“AI抢人大战”莫属。 2026年1-2月&#xff0c;AI岗位数量同比暴涨约12倍&#xff0c;在新经济全部岗位中的占比从2.29%跃升至26.23%&#xff0c;平均月薪突破6万元&#xff0c;比新经济行业平均水平高出26%。 科锐国际2026薪酬…...

AUO友达5.7寸液晶屏幕G057VN01 V2.20规格宽温液晶模组

工业设备显示屏从最初的 TN 单色面板&#xff0c;发展到如今的 AHVA&#xff08;Advanced Hyper-Viewing-Angle&#xff09;全视角架构&#xff0c;显示技术已趋成熟。随着物联网终端、智能制造与能源装备的普及&#xff0c;显示器件被要求在 −30C 至 85C 的极端温区中仍保持色…...