- 博客(12)
- 收藏
- 关注
原创 初识线段树
用int表示long long 防止在计算区间和的时候爆int,lc、rc分别表示根节点编号为p时的左右子树编号,左子树为2*p,即p
2024-11-21 13:39:58
1039
原创 滑动窗口求子数组个数(越长越合法)
滑动窗口求子数组个数,如果子数组越长越合法时,代码通常有以下特点:当内层循环停止时,以right为右端点,左端点从0到left-1都是合法的。通常需要ans+=left,可能你还无法具体理解,下边我将给出代码模板,再通过一些例题感悟。分享丨【题单】滑动窗口与双指针(定长/不定长/至多/至少/恰好/单序列/双序列/三指针) - 力扣(LeetCode)
2024-10-16 23:35:56
454
原创 定长滑动窗口题目(三)
对于第一个问题环形数组有一个比较常用的破解方法就是破环成链,可以把数组复制一倍,把环打破成一条链,比如{5,7,1,4} 可以变成{5,7,1,4,5,7,1,4}可以看到复制一倍后实现了数组首元素(5)和末尾元素(4)相邻的效果。对于第一个形成的窗口5,7,1由于k值的不同对应ans答案的位置不同,当k大于0的时候,这个窗口的和应该是4位置对应的答案,也就是说ans[3] = 5 + 7 + 1 = 13。,此时计算的就是正确的答案位置,当然如果r-k>0的时候(r-k+n)%n的结果不会变。
2024-10-12 20:12:32
471
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1