largest subarray sum code example
Example 1: kadane algorithm
public int kadane(int[] arr){
int max_so_far = 0, curr_max = Integer.MIN_VALUE;
for(int i: arr){
max_so_far += i;
if(max_so_far<0) max_so_far = 0;
if(max_so_far>curr_max) curr_max = max_so_far;
}
return curr_max;
}
Example 2: find longest subarray by sum
def max_length(s, k):
current = []
max_len = -1
for i in s:
current.append(i)
while sum(current) > k:
current = current[1:]
if sum(current) == k:
max_len = max(max_len, len(current))
return max_len