Skip to content

Commit 2b41cf2

Browse files
authored
Create MaxLenSubArrayWithZeroSum
1 parent 8f088dd commit 2b41cf2

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

MaxLenSubArrayWithZeroSum

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
static int getMaxLenSubArray(int[] inputArray) { //time complexity: O(n)
2+
HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
3+
int len = 0;
4+
int sum = 0;
5+
for (int i = 0; i < inputArray.length; i++) {
6+
sum = sum + inputArray[i];
7+
if (inputArray[i] == 0 && len == 0)
8+
len = 1;
9+
10+
if (sum == 0)
11+
len = i+1;
12+
13+
Integer prev_i = map.get(sum);
14+
if (prev_i != null)
15+
len = Math.max(len, i-prev_i);
16+
else
17+
map.put(sum, i);
18+
}
19+
return len;
20+
}

0 commit comments

Comments
 (0)