Untitled
public class MaxSubarraySum { public static int findMaxSum(int[] arr) { int maxi = Integer.MIN_VALUE; // max sum int lsum = 0; // local sum for (int i = 0; i < arr.length; i++) { lsum += arr[i]; maxi = Math.max(maxi, lsum); // Update maximum sum // Reset local sum if it becomes negative if (lsum < 0) { lsum = 0; } } return maxi; // Return the maximum sum } public static void main(String[] args) { int[] arr = {-2, 1, -3, 4, -1, 2, 1, -5, 4}; System.out.println("Maximum Subarray Sum: " + findMaxSum(arr)); } }
Leave a Comment