- 博客(26)
- 收藏
- 关注
原创 不定窗口09:数组的最大美丽值
题目意思就是:对于数组每一个元素,都可以将其替换为某个指定范围内的数(但是这个替换操作只能有一次),求替换后连续相等元素的最长子数组长度。但是排序了,有序数组,应该也可以用二分法。求最长子数组长度,可以用滑动窗口。
2024-10-30 16:56:28
242
原创 不定长滑动窗口03:删除一个元素后,能得到的最长连续非零子数组的长度
分别统计删掉每个元素(包含这个元素)对应的前面最大连续为1数组的长度和后面连续为1数组的长度,分别存储的pre[],aft[]遍历数组,统计当删除第i个元素时,在其前后最大连续为1数组的长度,并相加,每一次更新最大值;如果删除的为最后一个元素(i=n-1),则后方最大连续为1数组的长度==0。如果删除的为第一个元素(i=0),则前方最大连续为1数组的长度==0。1、删除一个元素,删除元素的两端合并为一个全为1的数组。2、删除一个元素,最长全为1的数组在左边或者右边。
2024-10-25 22:04:57
394
原创 不定滑动窗口01:长度最小子数组
2、移动左端点并减去左端点,再次判断是否满足窗口和>=target,直到不满足情况,每次更新最小长度;1、定义左右两个端点,遍历到窗口和>=target。
2024-10-21 22:17:45
218
原创 滑动窗口11:字串出现最大次数
2、下面就是遍历所有长度为min的字符字串(定长滑动窗口)并判断子串的字母数量是否满足条件,如果满足则加入。3、最后选取map中value值最大的返回。
2024-10-16 16:03:20
248
原创 滑动窗口08:几乎唯一子数组最大和
提供的一个方法,它的作用是尝试从 HashMap 中获取某个键对应的值。如果该键存在,则返回它对应的值;如果该键不存在,则返回一个默认值。3:每次判断需要知道互不相同元素个数,所以相同的元素直接数字统计即可。getOrDefault 是 Java 中。2:每次滑动窗口要更新和并检查是否满足条件。1:长度为k的定长滑动窗口。
2024-10-15 21:40:28
283
原创 滑动窗口07:String str是否包含所有长度为K的2进制字串
所以,知道长度为K的2进制字符串的数量为pow(2,K)个。最终就是比较HashSet的长度和pow(2,K)是否相等。定长滑动窗口问题,长度为K。
2024-10-15 20:01:27
292
原创 *滑动窗口05:拆炸弹
环形数组的特性,索引可以超过数组的长度,因此为了让索引回绕到数组的起点,通常使用取模操作来处理越界的索引。那么定义一个左右边界l,r,这个窗口的和就可以是S[r]-S[l-1]=S[l]+...S[r]可以将数组扩展成两倍长度,通过将原数组重复一次,这样可以避免复杂的取模运算。要用滑动窗口做,但想了一下感觉好麻烦,去了解了一下可以用环形数组和前缀和数组来计算。对于K
2024-10-12 22:08:30
611
原创 滑动窗口03:大小为K且平均值大于等于阈值子数组数目
选取左右边界,取第一个窗口,不断向右滑动并对窗口内的数据操作,判断是否符合要求,最后返回数值;定长滑动窗口,本质上和01,02没有区别。
2024-10-10 23:04:58
433
原创 1、创建maven模块IDEA无法提示导入本地Repositories的依赖
检查发现版本,本地设置啥的都没问题,要添加依赖也是从远程仓库下载。一直用的好好的,今天创建模块发现不知道为啥不行了。所以找到了本地仓库设置出现了问题。选中本地仓库点击update。就可以正常导入依赖了。
2024-09-05 11:19:26
307
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅