前缀和专题

https://chengzhaoxi.xyz/25169.html

本文总结了力扣上 2000 题以内的关于前缀和的 44 道题,思路接近的题放到了一起。刷完这份题目列表,力扣范围内的前缀和问题可以说刷爆了。

基础前缀和

303.区域和检索 - 数组不可变, 题解
304.二维区域和检索 - 矩阵不可变, 题解

频数前缀和

1177.构建回文串检测, 题解
1862.向下取整数对和, 题解

数据结构维护前缀和

单调队列维护

53.最大子序和, 题解
918.环形子数组的最大和, 题解

单调栈维护

1124.表现良好的最长时间段, 题解

HashMap 维护

key是前缀和的值,value为第一次出现时的索引

325.和等于 k 的最长子数组长度, 题解
1371.每个元音包含偶数次的最长子字符串, 题解
525.连续数组, 频数前缀和, 记录 1 和 0 的个数差
1542.找出最长的超赞子字符串, 频数前缀和,记录 0,1,2,3,4,5,6,7,8,9 的个数的奇偶性

key是前缀和的值,value为出现次数

560.和为K的子数组, 是 1074. 元素和为目标值的子矩阵数量 的一维版本, 题解
1248.统计优美子数组, 题解

key是前缀和模 K 的余数

523.连续的子数组和, 值为第一次出现时的索引
974.和可被 K 整除的子数组, 值为出现次数
1590.使数组和能被 P 整除, 值为最后一次出现时的索引
1524.和为奇数的子数组数目, 值为出现次数

二维前缀和

1074.元素和为目标值的子矩阵数量, 这是 560. 和为K的子数组 的二维版本, 题解
面试题 17.24. 最大子矩阵, 思路类似于 53. 最大子序和, 题解
363.矩形区域不超过 K 的最大数值和, 在面试题 17.24. 最大子矩阵基础上加了一个 K, 题解
1292.元素和小于等于阈值的正方形的最大边长, 二分 + 二维前缀和
1314.矩阵区域和
1139.最大的以 1 为边界的正方形, 用两组一维前缀和

运算推广

前缀积

152.乘积最大子数组, 题解
1352.最后 K 个数的乘积, 若乘法的前缀积会溢出,可以用对数的前缀和防溢出,但是结果转回整数需要用四舍五入而不是下取整

前缀异或

1310.子数组异或查询, 基础前缀异或
1442. 形成两个异或相等数组的三元组数目, 哈希表维护前缀异或结果
1738. 找出第 K 大的异或坐标值, 二维前缀异或

同时需要前缀和与后缀和信息

238.除自身以外数组的乘积
724.寻找数组的中心索引
1477.找两个和为目标值且不重叠的子数组
926.将字符串翻转到单调递增
838.推多米诺
828.统计子串中的唯一字符, 题解
1525.字符串的好分割数目, 频数前缀和, 统计字符的个数

前缀和预处理优化 dp

用前缀和预处理原始数组

837.新21点
1444.切披萨的方案数
1478.安排邮筒

前缀和优化 dp

用前缀和维护 dp 数组

1871.跳跃游戏 VII, 题解

差分

56.合并区间, 题解, 更好的做法是排序后贪心或者扫描线
370.区间加法, 题解, 本题是用差分维护区间加法的模板
1109.航班预订统计, 题解

其它

1381.设计一个支持增量操作的栈, 题解
689.三个无重叠子数组的最大和

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值