news 2026/4/23 6:41:20

第 173 场双周赛Q2——3795. 不同元素和至少为 K 的最短子数组长度

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第 173 场双周赛Q2——3795. 不同元素和至少为 K 的最短子数组长度

题目链接:3795. 不同元素和至少为 K 的最短子数组长度(中等)

算法原理:

解法:滑动窗口

146ms击败35.92%

时间复杂度O(N)

系统滑动窗口专题👇

一轮复习——C.滑动窗口模型总结

本题的滑动窗口模型为不定长-求长度-越长越合法/求最短/最小

①进窗口:用哈希表记录,保证相同值只加一次

②出窗口:总和>=k就持续出窗口

③更新:在出窗口时,也就是不断缩小范围时更新

Java代码:

class Solution { public int minLength(int[] nums, int k) { //滑动窗口 Map<Integer,Integer> hash=new HashMap<>(); int n=nums.length,sum=0,ret=0x3f3f3f3f; for(int left=0,right=0;right<n;right++){ //相同值只加一次 if(!hash.containsKey(nums[right])) sum+=nums[right]; //进窗口 hash.put(nums[right],hash.getOrDefault(nums[right],0)+1); //出窗口 while(sum>=k){ //更新:出窗口时不断缩小范围更新 if(sum>=k) ret=Math.min(ret,right-left+1); hash.put(nums[left],hash.get(nums[left])-1); if(hash.get(nums[left])==0){ sum-=nums[left]; hash.remove(nums[left]); } left++; } } return ret==0x3f3f3f3f?-1:ret; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/22 14:18:25

OpenPLC平台上的连续功能图设计实践

OpenPLC平台上的连续功能图设计实践&#xff1a;从原理到工程落地工业自动化系统正经历一场静默的变革。当产线逻辑变得越来越复杂&#xff0c;曾经广受青睐的梯形图编程开始显得力不从心——网络交错、跳转频繁、调试如“读天书”。而与此同时&#xff0c;一种更贴近现代软件工…

作者头像 李华
网站建设 2026/4/23 5:17:27

设计模式在Python中的优雅实现:从新手到专家的进阶指南

目录 摘要 1 引言&#xff1a;为什么Python设计模式与众不同 1.1 Python设计模式的独特哲学 1.2 设计模式在Python中的价值 2 单例模式&#xff1a;全局资源的优雅管理 2.1 单例模式的核心价值 2.2 多种实现方式及对比 2.3 性能对比分析 3 工厂模式&#xff1a;灵活对…

作者头像 李华
网站建设 2026/4/22 15:28:37

Scroll Reverser终极指南:让鼠标和触控板滚动方向完美共存

Scroll Reverser终极指南&#xff1a;让鼠标和触控板滚动方向完美共存 【免费下载链接】Scroll-Reverser Per-device scrolling prefs on macOS. 项目地址: https://gitcode.com/gh_mirrors/sc/Scroll-Reverser 还在为macOS设备间滚动方向不一致而烦恼吗&#xff1f;Scr…

作者头像 李华
网站建设 2026/4/21 13:54:08

HDI板专用FPC复合结构生产示例

HDI-FPC复合板是怎么“炼”成的&#xff1f;——从设计到量产的关键工艺实战解析你有没有想过&#xff0c;为什么现在的折叠屏手机可以反复弯折几千次而内部电路依然稳定运行&#xff1f;为什么TWS耳机能做到那么小却还能集成蓝牙、触控和充电管理&#xff1f;答案就藏在一块看…

作者头像 李华
网站建设 2026/4/21 12:35:21

树莓派4b安装系统下的PCIe转接驱动兼容性分析

树莓派4B的PCIe潜能&#xff1a;如何稳定安装系统到NVMe SSD&#xff1f;你有没有遇到过这样的场景&#xff1f;手里的树莓派4B跑着数据库、Docker容器&#xff0c;甚至想搭个轻量Kubernetes集群——结果一查iostat&#xff0c;发现磁盘I/O卡在20MB/s上纹丝不动。问题出在哪&am…

作者头像 李华
网站建设 2026/4/9 20:43:51

快速验证:用鱼香ROS搭建机器人原型系统

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个机器人原型快速验证平台&#xff0c;集成鱼香ROS一键安装功能。要求&#xff1a;1) 预装常用ROS功能包&#xff1b;2) 支持快速导入自定义算法&#xff1b;3) 提供可视化调…

作者头像 李华