【leetcode】852. 山脉数组的封顶索引

文章目录

    • 题目
    • 题解
      • 1. 遍历
      • 2. 二分查找

题目

852. 山脉数组的封顶索引

给定一个长度为 n 的整数 山脉 数组 arr ,其中的值递增到一个 峰值元素 然后递减。

返回峰值元素的下标。

你必须设计并实现时间复杂度为 O(log(n)) 的解决方案。

示例 1:

输入:arr = [0,1,0]
输出:1

示例 2:

输入:arr = [0,2,1,0]
输出:1

示例 3:

输入:arr = [0,10,5,2]
输出:1

题解

1. 遍历

class Solution(object):def peakIndexInMountainArray(self, arr):""":type arr: List[int]:rtype: int"""for i in range(1, len(arr) -1):if arr[i] > arr[i + 1]:return ireturn False

2. 二分查找

class Solution(object):def peakIndexInMountainArray(self, arr):""":type arr: List[int]:rtype: int"""# 二分查找n = len(arr)left = 0right = n - 1ans = -1while left <= right:mid = (left + right) // 2if arr[mid] > arr[mid + 1]:ans = midright = mid - 1else:left = mid + 1return ans

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

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

相关文章

Java期末考试准备

文章目录Java期末考试准备一、Java的输入.next()输入.nextLine()输入区别补充二、Java的输出三、类中常写方法toString()equals()其他四、容器/数组五、继承六、静态属性、方法.七、抽象类八、接口九、初始化模块十、泛型考完结束语Java学习历程注:这篇文章本来是写给同学的&am…

飞算JavaAI进阶:重塑Java开发范式的AI革命

引言&#xff1a;当代码生成进入"自动驾驶"时代 在2025年的Java开发领域&#xff0c;一场由AI驱动的革命正在重塑传统开发范式。当GitHub Copilot还在通过代码补全提升效率时&#xff0c;飞算JavaAI已实现从需求分析到完整工程代码生成的"端到端"闭环。这款…

如何在银河麒麟桌面系统中启用 sudo 密码的星号反馈

引文 我们在银河麒麟桌面操作系统上使用 sudo 命令时&#xff0c;都遇到过这样的困扰&#xff1a;输入密码时光标一动不动&#xff0c;屏幕上没有任何提示&#xff08;没有星号 *&#xff0c;也没有任何字符&#xff09;&#xff1f;就像在黑暗中摸索钥匙孔一样&#xff0c;心里…

二刷 黑马点评 秒杀优化

优化逻辑 把耗时较短的逻辑判断放入redsi中&#xff0c;比如库存是否足够以及是否一人一单&#xff0c;只要这样的逻辑完成&#xff0c;就代表一定能下单成功&#xff0c;我们就将结果返回给用户&#xff0c;然后我们再开一个线程慢慢执行队列中的信息 问题&#xff1a; 如何快…

HANA SQLScript中的变量类型汇总

在 SAP HANA SQLScript 中&#xff0c;可以使用多种变量类型&#xff0c;包括标量&#xff08;Scalar&#xff09;类型、表类型和结构化类型。以下是各种变量类型的详细说明和示例。1. 标量变量&#xff08;Scalar Variables&#xff09; 标量变量是用于存储单个值&#xff08;…

基于 Amazon Nova Sonic 和 MCP 构建语音交互 Agent

1、引言 随着人工智能技术的飞速发展&#xff0c;自然语言处理和语音交互技术正在深刻改变人机交互的方式。语音交互正从简单的“机械应答”向更自然的“类人对话”演进 。传统的语音系统通常采用模块化架构&#xff0c;将语音处理流程割裂为 ASR&#xff08;自动语音识别&…

项目的存量接口怎么低成本接入MCP?

项目的存量接口怎么低成本接入MCP&#xff1f; 老项目里的一些接口&#xff0c;如何低成本的接入MCP&#xff08;0成本不可能&#xff09;&#xff0c;变成MCP server 的tools&#xff1f; 先抛出这个问题&#xff1f;评论区的xdm如果有懂的&#xff0c;可以打在评论区&#xf…

用图片生成高保真3D模型!Hi3DGen以法线为桥,为高清三维几何生成另辟蹊径

主页&#xff1a;http://qingkeai.online/ 原文&#xff1a;用图片生成高保真3D模型&#xff01;Hi3DGen以法线为桥&#xff0c;为高清三维几何生成另辟蹊径 随着从二维图像构建高保真三维模型的需求日益增长&#xff0c;现有方法由于域间隙的限制以及 RGB 图像固有的模糊性&a…

Charles抓包工具中文安装和使用详解,快速掌握API调试与网络优化

Charles抓包工具中文安装和使用详解 在软件开发中&#xff0c;调试API请求、捕获网络流量以及优化应用性能是开发者日常工作中不可或缺的环节。Charles抓包工具作为业内领先的网络调试工具&#xff0c;以其功能强大、易用性高、支持HTTPS流量解密等特点&#xff0c;广泛应用于A…

Java :List,LinkedList,ArrayList

文章目录List常用方法List集合的遍历方式ArrayList底层的原理LinkedList底层原理常用方法List常用方法 //1.创建一个ArrayList集合对象&#xff08;有序、有索引、可以重复&#xff09; List<String> list new ArrayList<>(); list.add("蜘蛛精"); list…

LLM面试题及讲解 4

LLM面试题及讲解 4 目录 LLM面试题及讲解 4 题目讲解 一、基础概念与理论 二、模型训练与优化 三、应用与实践 四、前沿研究与趋势 大型语言模型(LLM)的核心特征是什么? LLM与传统NLP技术的本质区别是什么? Transformer架构的基本组成部分有哪些?其在LLM中为何重要? BERT…

Harmony-Next鸿蒙实战开发项目-仿小米商城App----V2

1.、简介 本项目是Harmony-Next原生开发&#xff0c;真实网络请求。采用V2等状态管理装饰器。包含&#xff08;首页、分类、发现、购物车、我的、登录、搜索&#xff0c;搜索结果&#xff0c;商品详情等&#xff09;.包含V2对接口返回数据的深度监听。 2、页面展示&#xff1…

python闭包和装饰器(超详解)

目录 一、闭包的概念 1.概念 2.闭包的特征 3.闭包的作用 二、装饰器 1.什么是装饰器 2.装饰器的作用 1.统计代码耗时 2.对代码进行权限检查 3.记录日志 3.闭包和装饰器的关系 4.注意事项&#xff1a; 一、闭包的概念 1.概念 闭包&#xff08;Closure&#xff09;指…

解决hadoop常用到的问题

1.namenode无法启动问题 报错1. ERROR: Attempting to operate on hdfs namenode as root ERROR: but there is no HDFS_NAMENODE_USER defined. 原因&#xff1a;不能用 root 用户直接启动 Hadoop 的 HDFS 组件&#xff08;NameNode / DataNode / SecondaryNameNode&#xff0…

深度学习G3周:CGAN入门(生成手势图像)

&#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 基础任务&#xff1a; 1.条件生成对抗网络&#xff08;CGAN&#xff09;的基本原理 2.CGAN是如何实现条件控制的 3.学习本文CGAN代码&#xff0c;并跑通代码…

流式数据处理实战:用状态机 + scan 优雅过滤 AI 响应中的 `<think>` 标签

流式数据处理实战&#xff1a;用状态机 scan 优雅过滤 AI 响应中的 <think> 标签 1. 引言&#xff1a;流式数据处理的挑战 在现代 AI 应用开发中&#xff0c;流式 API&#xff08;如 OpenAI、Claude 等&#xff09;能实时返回分块数据&#xff0c;提升用户体验。但流式…

【实时Linux实战系列】硬件中断与实时性

在实时系统中&#xff0c;硬件中断是系统响应外部事件的关键机制之一。硬件中断允许系统在执行任务时被外部事件打断&#xff0c;从而快速响应这些事件。然而&#xff0c;中断处理不当可能会导致系统延迟增加&#xff0c;影响系统的实时性。因此&#xff0c;优化中断处理对于提…

基于DTLC-AEC与DTLN的轻量级实时语音降噪系统设计与实现

基于DTLC-AEC与DTLN的轻量级实时语音降噪系统设计与实现 1. 引言 在当今的实时通信应用中,语音质量是影响用户体验的关键因素之一。环境噪声和回声会严重降低语音清晰度,特别是在移动设备和嵌入式系统上。本文将详细介绍如何将两种先进的开源模型——DTLC-AEC(深度学习回声…

基于Hadoop与LightFM的美妆推荐系统设计与实现

文章目录有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博主项目介绍总结每文一语有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博主 项目介绍 本项目旨在基于大数据Hadoop平台和机器学习技术&#xff0c;构建一套面向美妆…

notepad++ 多行复制拼接

如何将中文一 一复制到英文后面按住 ALT ,鼠标左键拖动多行选中中文Ctrl C 复制 在英文的第一行结尾处 Ctrl v 粘贴