public ArrayList<Integer> subarraySum(int[] nums) {
// write your code here
ArrayList<Integer> res = new ArrayList<Integer>();
if(nums.length == 0 || nums == null)
return res;
HashMap<Integer,Integer> map = new HashMap<Integer,Integer>();
int sum = 0;
for(int i = 0 ; i < nums.length; i++) {
sum += nums[i];
if(nums[i] == 0){
res.add(i);
res.add(i);
break;
}
if(sum == 0) {
res.add(0);
res.add(i);
break;
}
if(map.containsKey(sum)) {
res.add(map.get(sum)+1);
res.add(i);
break;
}
map.put(sum, i);
}
return res;
}
Leave A Comment