Skip to content

Commit

Permalink
Create kadane's algorithm
Browse files Browse the repository at this point in the history
kadane's algorithm  fix ashvish183#108
  • Loading branch information
harshsharma-11 authored Oct 19, 2023
1 parent 3432d73 commit 44bae54
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions kadane's algorithm
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
//kadane's algorithm
#include <bits/stdc++.h>
using namespace std;

int maxSubarraySum(int arr[], int n) {
int maxi = INT_MIN; // maximum sum

for (int i = 0; i < n; i++) {
int sum = 0;
for (int j = i; j < n; j++) {
// current subarray = arr[i.....j]

//add the current element arr[j]
// to the sum i.e. sum of arr[i...j-1]
sum += arr[j];

maxi = max(maxi, sum); // getting the maximum
}
}

return maxi;
}

int main()
{
int arr[] = { -2, 1, -3, 4, -1, 2, 1, -5, 4};
int n = sizeof(arr) / sizeof(arr[0]);
int maxSum = maxSubarraySum(arr, n);
cout << "The maximum subarray sum is: " << maxSum << endl;
return 0;
}

0 comments on commit 44bae54

Please sign in to comment.