首页/新闻资讯/正文详情

DeepSeek LeetCode 503. 下一个更大元素 II Java实现

发布时间:2026/11/4 19:52:08 来源:云帆数科 栏目:资讯中心
DeepSeek    LeetCode 503. 下一个更大元素 II Java实现
LeetCode 503. 下一个更大元素 II · Java 实现题意给定一个循环数组 nums返回每个元素的下一个更大元素。若不存在则返回 -1。与 496 题的区别本题数组是环形的可以绕回开头继续找。示例nums [1, 2, 1] 输出: [2, -1, 2]· 1 → 下一个更大的 2· 2 → 后面没有更大的绕一圈也没有-1· 1 → 绕回开头找到 2思路一单调栈 数组翻倍推荐核心技巧把数组逻辑上翻倍成 2n 长nums[i % n]这样环形问题就转化为线性问题。· 维护一个单调递减栈存下标栈底到栈顶对应值递减。· 遍历 i ∈ [0, 2n - 1]对当前值 nums[i % n]· 只要栈顶元素的值 小于 当前值就说明找到了下一个更大元素弹出并记录答案。· 把当前下标压栈。为什么遍历 2n - 1 就够了最后一位 i 2n - 1 对应的下标是 n - 1它的下一个更大元素只可能在 [n, 2n - 2] 中正好覆盖了所有环回的可能不需要再多走一圈。importjava.util.ArrayDeque;importjava.util.Arrays;importjava.util.Deque;classSolution{publicint[]nextGreaterElements(int[]nums){intnnums.length;int[]resnewint[n];Arrays.fill(res,-1);DequeIntegerstacknewArrayDeque();// 存下标栈内值单调递减for(inti0;i2*n-1;i){intidxi%n;while(!stack.isEmpty()nums[stack.peek()]nums[idx]){res[stack.pop()]nums[idx];}stack.push(idx);}returnres;}}注意2n - 1 次遍历中前 n 次是正常入栈后 n - 1 次的作用只是查找、弹出并不是真的再把下标压进去其实压了也没关系因为后面不会再被用到只是栈会变长一点点。如果你写 2 * n 也完全正确只是多一次冗余判断。思路二暴力 O(n²)仅作对照classSolution{publicint[]nextGreaterElements(int[]nums){intnnums.length;int[]resnewint[n];for(inti0;in;i){res[i]-1;for(intj1;jn;j){intidx(ij)%n;if(nums[idx]nums[i]){res[i]nums[idx];break;}}}returnres;}}· 时间 O(n²)会被大数据卡住只适合理解题意。思路三Deque 存值 下标映射不推荐有人会尝试 Mapvalue, value 映射。因为数组有重复元素value → next greater 映射会冲突所以必须用下标入栈这是本题的坑点之一。复杂度方法 时间 空间单调栈推荐 O(n) O(n)暴力 O(n²) O(1)每个下标最多入栈、出栈各一次所以栈版本的总操作数是 O(n)。关键坑点 ⚠️必须用下标入栈不能用值· 数组里可能有重复元素如 [2, 2, 3]用 MapInteger, Integer 做映射会覆盖。· 用下标才能唯一确定位置。循环长度是 2 * n - 1不是 2 * n· 2n 也能对但 2n - 1 更紧是面试官爱问的细节。· 原因最后一个元素 (n-1) 的下一个更大元素只可能在 [n, 2n-2] 里出现2n-1 这一位多余。比较必须是 不能是 · 相等不算更大相等时不能弹出。· 写成 会导致 [2,2,3] 的前两个 2 错误地指向彼此。res 初始化为 -1而不是 0· 0 也未必是合法答案正确默认值只能是 -1题意不存在则 -1。ArrayDeque 不允许 push(null)· 用 Deque 存下标自动装箱不会出问题但别尝试 push(null)。不要真的构造一个 2n 长的数组· 用 i % n 取模即可既省空间又符合环形语义。一句话总结环形问题 遍历两圈 取模用单调栈在 2n - 1 次遍历中出栈即找到答案。栈存下标防重复值比较用严格 答案默认 -1。

相关推荐

【共创稿事节】HarmonyOS 7.0 HiLog分级日志:从接入到生产验证
【共创稿事节】HarmonyOS 7.0 HiLog分级日志:从接入到生产验证

HiLog 是鸿蒙日志体系里最不起眼的组件——写日志谁不会?但健康菜谱助手的一次线上排查让我意识到,乱写的日志比没有日志更糟:两万条 INFO 日志淹没了唯一的 ERROR,关键线索被刷掉,排查多花了四小时。这篇记录 HiLog 的分级体系、域与标签的设计、隐私合规的 %{public} 与 %{p… · 2026/11/4 19:52:08

大模型算法八股
大模型算法八股

一、深度学习与Pytorch(一)神经网络与训练过程输出:线性组合-加入偏置-激活函数对于第一次正向传播,权重的值将随机初始化。sigmoid:输出(0,1)之间,输入值过大或过小梯度消失&#x… · 2026/11/4 19:50:06

读懂 Qwen2.5-Coder-14B-Instruct_gpuep_1.0_gpu_128 的底层架构:48 层 Transformer、GQA 分组注意力与 32K 上下文全解析
读懂 Qwen2.5-Coder-14B-Instruct_gpuep_1.0_gpu_128 的底层架构:48 层 Transformer、GQA 分组注意力与 32K 上下文全解析

大模型代码模型模型量化本地部署模型优化Qwen 【免费下载链接】Qwen2.5-Coder-14B-Instruct_gpuep_1.0_gpu_128 项目地址: https://ai.gitcode.com/hf_mirrors/amd/Qwen2.5-Coder-14B-Instruct_gpuep_1.0_gpu_128 点击查看 免费下载 Qwen2.5-Coder-14B-Instruct_gp… · 2026/11/4 19:50:06

微服务架构下基于Nacos的轻量级任务调度方案设计与实现
微服务架构下基于Nacos的轻量级任务调度方案设计与实现

1. 项目背景与核心问题在微服务架构中,任务调度系统是不可或缺的基础组件。XXL-JOB作为国内广泛使用的开源调度系统,以其稳定性和功能完整性赢得了大量用户的青睐。然而,在全面采用NacosSpring Cloud Alibaba技术栈的架构中,我们发… · 2026/11/4 21:12:16

MMORPG服务端3.2.2本地搭建:认证、世界服与数据库排错
MMORPG服务端3.2.2本地搭建:认证、世界服与数据库排错

3.2.2 这个版本号,在游戏服务端研究的圈子里算是一个绕不开的坐标。它处在客户端协议还没有大规模加密、服务端模拟框架的文档相对完整、社区沉淀下来的调试经验也足够多的那个时间段,所以很多人想弄明白“一个 MMORPG 的服务端到底是怎么跑起来的”&… · 2026/11/4 21:12:16

AI智能理论到工程实践:泛化、缩放定律与排查方法
AI智能理论到工程实践:泛化、缩放定律与排查方法

“AI智能的理论的概述”这个说法,第一次看到的时候我愣了几秒。它不像一本教材的目录,也不像某个具体技术的名字,更像是有人想把一整套关于智能的假设、模型和边界条件塞进一句话里。我在这个方向待了十来年,从最早手推感知机的权… · 2026/11/4 21:12:16

系统音频捕获+实时字幕翻译:LiveCaptions-Translator 实战配置与避坑指南
系统音频捕获+实时字幕翻译:LiveCaptions-Translator 实战配置与避坑指南

实时语音翻译这件事,我前后折腾过不下五套方案,从最早的手动转录加翻译拼接,到后来的本地模型串联,再到现成的桌面工具,踩过的坑能写满两页纸。LiveCaptions-Translator 是我目前留在机器上长期使用的一套,… · 2026/11/4 21:12:16

Linux 上 Miniconda 安装配置全攻略:环境隔离与避坑指南
Linux 上 Miniconda 安装配置全攻略:环境隔离与避坑指南

1. 为什么我不推荐直接用系统自带的 Python 很多人第一次在 Linux 上装 Python 环境,习惯性敲 sudo apt install python3 ,装完发现版本是系统仓库里那个老掉牙的 3.8 或者 3.10,然后 pip 装包时各种权限报错,最后被迫 sudo pi… · 2026/11/4 21:12:16

N4系统集成避坑:协议矩阵、Device点数与BACnet IP开放
N4系统集成避坑:协议矩阵、Device点数与BACnet IP开放

简介:《N4系统集成介绍-2021.pdf》面向楼宇自控、弱电集成与IBMS对接人员,聚焦霍尼韦尔N4平台在BA系统及第三方设备接入中的架构理解与接口开放选型。文档以NIAGARA4集成架构为主线,梳理冷热源、空调、变配电、电扶梯、能源计费、消防、智能照… · 2026/11/4 21:11:14

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

AI辅助技术栈评估:提升研发决策效率60%
AI辅助技术栈评估:提升研发决策效率60%

1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17

从生成Token到直接决策:Jev如何重塑AI Agent工程实践
从生成Token到直接决策:Jev如何重塑AI Agent工程实践

1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17

32G统一内存跑大模型:内存账、TPS实测与端云分流
32G统一内存跑大模型:内存账、TPS实测与端云分流

想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码