news 2026/8/9 21:27:03

LeetCode热题100--300. 最长递增子序列--中等

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LeetCode热题100--300. 最长递增子序列--中等

题目

给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。

子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。

示例 1:
输入:nums = [10,9,2,5,3,7,101,18]
输出:4
解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。

示例 2:
输入:nums = [0,1,0,3,2,3]
输出:4

示例 3:
输入:nums = [7,7,7,7,7,7,7]
输出:1

题解

classSolution{publicintlengthOfLIS(int[]nums){int[]tails=newint[nums.length];intres=0;for(intnum:nums){inti=0,j=res;while(i<j){intm=(i+j)/2;if(tails[m]<num)i=m+1;elsej=m;}tails[i]=num;if(res==j)res++;}returnres;}}

解析

出自:300. 最长递增子序列(动态规划 + 二分查找,清晰图解)

classSolution{publicintlengthOfLIS(int[]nums){// tails[i] 表示长度为 i+1 的递增子序列中,最小的末尾元素值// 例如:tails[0] 是长度为1的递增子序列的最小结尾int[]tails=newint[nums.length];// res 表示当前找到的最长递增子序列的长度(也是 tails 数组的有效长度)intres=0;// 遍历数组中的每一个数字for(intnum:nums){// 在 tails[0...res-1] 中二分查找第一个 >= num 的位置// i 是左边界,j 是右边界(初始为当前有效长度 res)inti=0,j=res;// 二分查找:寻找插入位置(lower bound)while(i<j){// 计算中点(避免溢出,但此处安全)intm=(i+j)/2;// 如果 tails[m] < num,说明 num 可以接在 tails[m] 后面形成更长序列// 所以目标位置在右半部分if(tails[m]<num){i=m+1;}else{// tails[m] >= num,说明可以尝试用 num 替换 tails[m] 使结尾更小// 目标位置在左半部分(包括 m)j=m;}}// 将 num 放到找到的位置 i:// - 如果 i == res,说明 num 比所有 tails 元素都大,可以扩展 LIS 长度// - 否则,用 num 替换 tails[i],保持长度不变但让结尾更小(贪心)tails[i]=num;// 如果插入位置 i 等于原来的 res(即 j == res),说明 LIS 长度增加了if(res==j){res++;}}// 返回最长递增子序列的长度returnres;}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/29 13:19:10

错过再等十年:智普Open-AutoGLM核心原理首次公开解读

第一章&#xff1a;错过再等十年&#xff1a;智普Open-AutoGLM核心原理首次公开解读智普AI最新发布的Open-AutoGLM模型&#xff0c;标志着自动化自然语言处理迈向新纪元。该模型融合了图神经网络与大语言模型的双重优势&#xff0c;能够在无监督场景下自动构建知识图谱并完成复…

作者头像 李华
网站建设 2026/8/1 19:20:55

OpenCV4 Python GPU加速YOLOv3目标检测实战

OpenCV4 Python GPU加速YOLOv3目标检测实战 在实时视频分析、智能监控和自动驾驶等场景中&#xff0c;“快”从来不只是一个性能指标&#xff0c;而是系统能否落地的关键门槛。哪怕模型精度再高&#xff0c;如果单帧处理耗时超过几十毫秒&#xff0c;整个系统就会因为延迟累积…

作者头像 李华
网站建设 2026/8/8 13:49:32

梯度下降法:优化算法核心解析

梯度下降法&#xff1a;优化算法核心解析 在一张泛黄的老照片上&#xff0c;斑驳的灰度影像记录着百年前的一次家庭聚会。人物轮廓依稀可辨&#xff0c;但衣着的颜色、背景的景致早已湮没在时光中。如今&#xff0c;只需几秒&#xff0c;AI就能为这张黑白照“还原”出近乎真实…

作者头像 李华
网站建设 2026/7/31 10:17:09

JFinal实现验证码生成与图片输出

JFinal 验证码生成与图片输出实战&#xff1a;构建安全高效的 Web 验证方案 在现代 Web 应用开发中&#xff0c;登录和注册环节的安全性至关重要。随着自动化脚本和爬虫技术的普及&#xff0c;单纯依赖表单提交已无法有效抵御暴力破解与批量注册攻击。验证码作为一道基础但关键…

作者头像 李华
网站建设 2026/7/31 3:43:52

LDconv

提出线性可变形卷积&#xff08;LDConv&#xff09;&#xff0c;核心是&#xff1a; 定义任意大小的卷积核&#xff0c;生成 “坐标操作算法” 以适配不同目标&#xff1b; 引入偏移量调整每个位置的采样形状&#xff0c;使采样形状随任务动态变化&#xff1b; 参数数量随核大小…

作者头像 李华
网站建设 2026/8/6 17:05:34

EMCAD:E

采用独特的多尺度深度可分离卷积&#xff0c;增强多尺度特征图的通道交互&#xff0c;融合通道空间与分组注意力机制提出方法&#xff1a;设计多尺度注意力网络&#xff08;MAN&#xff09;&#xff0c;核心集成两种新模块&#xff1a; 多尺度大核注意力&#xff08;MLKA&#…

作者头像 李华