class Solution {
public int subarraySum(int[] nums, int k) {
Map<Integer,Integer> map = new HashMap<>();
int count=0,sum=0;
map.put(0,1);
for(int i:nums){
sum += i;
if(map.containsKey(sum-k))
count += map.get(sum-k);
map.compute(sum,(key,v)->v==null ? 1 : v+1);
}
return count;
}
}
该代码实现了一个Java方法,用于解决LeetCode中的问题,即在给定整数数组nums和目标值k的情况下,找出和为k的连续子数组的个数。它使用哈希映射存储前缀和,以便快速查找满足条件的子数组。
358

被折叠的 条评论
为什么被折叠?



