🗒️1695. 删除子数组的最大得分
2024-11-27
| 2024-11-27
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Nov 27, 2024 01:30 AM
给你一个正整数数组 nums ,请你从中删除一个含有 若干不同元素 的子数组删除子数组的 得分 就是子数组各元素之  。
返回 只删除一个 子数组可获得的 最大得分 。
如果数组 b 是数组 a 的一个连续子序列,即如果它等于 a[l],a[l+1],...,a[r] ,那么它就是 a 的一个子数组。

这道题也是不定长的滑动窗口。我们的思路是使用 Hash 的方法统计元素是否重复。
这里提供两种思路
第一种思路,使用 HashSet ,要先判断当前集合中有没有右窗口的元素存在,再放入右窗口的元素,不然在删除重复的时候,新元素就没有了。
第二种思路,使用 HashMapHashMap 就可以直接套用模板了。可以先放元素,再判断。——推荐使用
奇技淫巧——暴力开数组
Java
💡
使用 HashMap 不用将 key 移除

📎 参考

  • 【题单】滑动窗口与双指针
  • 2958. 最多 K 个重复元素的最长子数组904. 水果成篮
    Loading...
    目录