剑指 Offer II 010. 和为 k 的子数组
给定一个整数数组和一个整数 k ,请找到该数组中和为 k 的连续子数组的个数。
示例 1:
输入:nums = [1,1,1], k = 2
输出: 2
解释: 此题 [1,1] 与 [1,1] 为两种不同的情况
示例 2:
输入:nums = [1,2,3], k = 3
输出: 2
思路
- 前缀和+双指针
- 连续数组,可以考虑用前缀和去算
- 得到前缀和数列后,记得前缀和前面加一个0元素,方便计算
- 根据前缀和,用双指针算法,计算右指针减去左指针的值是否等于k,等于则数量加1,不等于则看是大于k还是小于k调节指针大小
代码
标签:010,前缀,Offer,II,数组,指针
From: https://www.cnblogs.com/edkong/p/17224064.html