news 2026/7/9 1:43:29

力扣滑动窗口

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣滑动窗口

力扣算法题第2461题:
长度为K子数组中的最大和
给你一个整数数组 nums 和一个整数 k 。请你从 nums 中满足下述条件的全部子数组中找出最大子数组和:
子数组的长度是 k,且
子数组中的所有元素 各不相同 。
返回满足题面要求的最大子数组和。如果不存在子数组满足这些条件,返回 0 。
子数组 是数组中一段连续非空的元素序列

思路(java)(滑动窗口):
先创建一个哈希表,用来保存每个值出现的次数,然后for循环,定义left来记录长度为K的子数组的最小下标值(刚开始会小于0),循环到left>=0之后,进行滑动窗口,先判断哈希表的长度是否等于K,如果不等于就说明有重复数字,跳过这一条循环,如果哈希表的长度等于K,先取之前的值和现在的值的最大值,再对最左边的元素进行离开窗口操作,即若哈希表的值为1,去除这个键,否则让其值减一.
力扣参考答案:
class Solution {
public long maximumSubarraySum(int[] nums, int k) {
long ans = 0;
long s = 0;
Map<Integer, Integer> cnt = new HashMap<>();

for (int i = 0; i < nums.length; i++) {
// 1. 进入窗口
s += nums[i];
cnt.merge(nums[i], 1, Integer::sum); // cnt[nums[i]]++

int left = i - k + 1;
if (left < 0) { // 窗口大小不足 k
continue;
}

// 2. 更新答案
if (cnt.size() == k) {
ans = Math.max(ans, s);
}

// 3. 离开窗口
int out = nums[left];
s -= out;
int c = cnt.get(out);
if (c > 1) {
cnt.put(out, c - 1);
} else {
cnt.remove(out);
}
}

return ans;
}
}
链接:https://leetcode.cn/problems/maximum-sum-of-distinct-subarrays-with-length-k/solutions/1951940/hua-dong-chuang-kou-by-endlesscheng-m0gm/

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/8 0:35:31

Llama-Factory是否支持命名实体识别(NER)任务?

Llama-Factory是否支持命名实体识别&#xff08;NER&#xff09;任务&#xff1f; 在大模型加速落地的今天&#xff0c;越来越多企业希望将通用语言模型应用于具体的信息抽取场景——比如从客服对话中提取客户姓名与电话、从医疗记录里识别疾病名称和用药信息。这类需求背后的核…

作者头像 李华
网站建设 2026/7/7 14:10:24

用ComfyUI做AI艺术创作:艺术家的真实使用体验分享

用ComfyUI做AI艺术创作&#xff1a;艺术家的真实使用体验分享 在AI生成图像已经泛滥的今天&#xff0c;真正让作品脱颖而出的&#xff0c;不再是“输入一段漂亮提示词”&#xff0c;而是你如何控制整个生成过程。我曾花整整三个月时间&#xff0c;在传统WebUI里反复调试参数、复…

作者头像 李华
网站建设 2026/7/8 18:34:59

Arthas版本管理终极指南:快速掌握Java诊断工具多版本切换技巧

Arthas版本管理终极指南&#xff1a;快速掌握Java诊断工具多版本切换技巧 【免费下载链接】arthas Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas 项目地址: https://gitcode.com/gh_mirrors/ar/arthas 你是否曾经因为Arthas版本不匹配而无法诊断线上…

作者头像 李华
网站建设 2026/7/8 21:44:29

如何用CLIP模型5分钟搭建智能商品识别系统

如何用CLIP模型5分钟搭建智能商品识别系统 【免费下载链接】CLIP CLIP (Contrastive Language-Image Pretraining), Predict the most relevant text snippet given an image 项目地址: https://gitcode.com/GitHub_Trending/cl/CLIP 想要零代码实现智能商品分类&#x…

作者头像 李华
网站建设 2026/7/7 23:29:09

鱼叉钓鱼攻击中DarkCloud窃密木马的技术剖析与防御对策

摘要近年来&#xff0c;以信息窃取为目的的恶意软件在高级持续性威胁&#xff08;APT&#xff09;及商业间谍活动中扮演着愈发关键的角色。2025年9月&#xff0c;eSentire威胁响应单元&#xff08;TRU&#xff09;披露了一起针对制造业企业Zendesk客服工单系统的鱼叉钓鱼攻击事…

作者头像 李华