Kadane's Algorithm | Largest Sum Contiguous Subarray | Java and C++ | Anuj Bhaiya ✅DSAOne Course #13

preview_player
Показать описание
Hey guys, In this video, we'll be solving Largest Sum Contiguous Subarray Problem using Kadane's Algorithm.

🚀 Follow me on:

╔═╦╗╔╦╗╔═╦═╦╦╦╦╗╔═╗
║╚╣║║║╚╣╚╣╔╣╔╣║╚╣═╣
╠╗║╚╝║║╠╗║╚╣║║║║║═╣
╚═╩══╩═╩═╩═╩╝╚╩═╩═╝

🥳 Join our Telegram Community:

💸 Use coupon code ANUJBHAIYA on GeeksforGeeks to avail discounts on courses!

Hashtags:
#anujbhaiya #dsaone #kadane #algorithm

Ignore these tags:

kadane's algorithm
kadanes algorithm
kadane
kadane algorithm
algorithm
maximum sum subarray kadane algorithm
kadane's
algorithms
kadanes algorithm maximum sum subarray
kadanes algorithm to maximum sum subarray
kadane's algoritm
kadane's algorithm maximum sum subarray
kadane algorithm java
kadanes
kadanes algorithm java
data structure algorithms kadanes algorithm
kadane's algorithm in c
kadane's algorithm java
kadanes algorithm explained
kadane's algorithm
kadane algorithm
kadanes algorithm
algorithm
kadane
kadane algorithm c++
kadane's
kadane algorithm java
algorithms
kadanes algorithm maximum sum subarray
kadanes algorithm to maximum sum subarray
kadane's algorithm maximum sum subarray
kadane's algorithm in c
maximum sum subarray kadane algorithm
kadane algorithm 2d
kadane algorithm dp
kadane algorithm complexity
kadane's algorithm to maximum sum subarray problem
kadane's algorithm
kadane algorithm
kadane's algo v.v.v.v.v imp
largest sum contiguous subarray
kadanes algorithm
maximum subarray
maximum subarray problem
maximum sum subarray
maximum subarray sum
anuj bhaiya
maximum subarray leetcode
kadane's algo
kadens algorithm
kadane’s algorithm
subarray
kadane
kadane algo
kadanes algo
maximum sub array
maximum product subarray
max subarray
kadane's algorithm in hindi
max subarray sum
find largest sum contiguous subarray
algorithm
maximum circular subarray sum
max sum subarray
kandane algorithm
leetcode 53
max sum contiguous subarray
subarray with given sum
max sub array
maximum subarray
dsa
kadane algorithm in hindi
split array largest sum
max product subarray
longest and subarray
subarray sum
dsa one
max circular subarray sum
maximum frequent subarray sum
continuous subarray sum
subarray sum equals k
algorithms in java
anuj bhaiya dsa
array algorithms
leetcode maximum subarray
maximum sum triplet
algorithms
greedy algorithm
anuj
array algorithm
find subsequence of length k with the largest sum
kadane's algorithm hindi
maximum sum rectangle
aditya verma dynamic programming
contiguous subarray
kadane's algorithm jenny
maximum beauty subarray
maximum sub array sum
maximum sum circular subarray
subset sum problem
two pointer
algorithm course
k-th largest sum contiguous subarray
longest subarray
max subarray problem
maximum frequent subarray sum codechef solution
maximum subarray sum cases
anuj bhaiya java
apna college
contiguous array
dsa course
find largest sum contiguous subarray [v. imp]
given an array arr[] of n integers. find the contiguous sub-array(containing at least one number) which has the maximum sum and return its sum.
kadens algo
longest and subarray codechef
maximize the sum hackerearth
maximum contiguous sub-array problem
partition array for maximum sum
algorithm in java
kadane's algorithm
kadane algorithm
kadane's algo v.v.v.v.v imp
largest sum contiguous subarray
maximum subarray
kadanes algorithm
maximum subarray problem
maximum sum subarray
maximum subarray leetcode
maximum subarray sum
anuj bhaiya
kadane's algo
kadens algorithm
kadane’s algorithm
subarray
kadane algo
kadane
kadanes algo
maximum sub array
max subarray
maximum product subarray
kadane's algorithm in hindi
max subarray sum
find largest sum contiguous subarray
algorithm
maximum circular subarray sum
53. maximum subarray
leetcode 53
max sum subarray
kandane algorithm
max sum contiguous subarray
subarray with given sum
max sub array
dsa
split array largest sum
kadane algorithm in hindi
subarray sum
max product subarray
longest and subarray
dsa one
leetcode maximum subarray
max circular subarray sum
maximum frequent subarray sum
continuous subarray sum
algorithms in java
greedy algorithm
subarray sum equals k
anuj bhaiya dsa
array algorithms
Рекомендации по теме
Комментарии
Автор

This is once of the best explanation i have heard about any DS algorithm. You not only explained the solution but explained how should we think. thanks a lot

ritiagrawal
Автор

Bhai sahab !!!! Kitne acche se samjhaya aapne. Maza aa gaya Anuj Bhaiya. Thank you.

anshulkumar
Автор

Bhaiya aap hmare liye itni mehnat krte h to apkr liye like to bnta h
Love u bhaiya ♥♥

Krishna-levz
Автор

I knew this algorithm but was struggling with an explanation ....really appreciable work !

jaishreesaraswat
Автор

I was struggling for hours with this algorithm, Thanks for the detailed explanation.

masqueradeee
Автор

Really very nicely explained and also in very easy manner to understand... thanku so much sir!!!

aneezahayatshaikh
Автор

Nice explanation!
For an array with negative values:

int max(int a, int b)
{
int temp = a>b?a:b;
return temp;
}
int maxSubArray(const int* A, int n1) {
int i, j, curr_sum=A[0], max_sum=A[0];
for(i=1;i<n1;i++)
{
curr_sum = max(A[i], curr_sum+A[i]);
max_sum = max(curr_sum, max_sum);

}
return max_sum;
}

aniketborkar
Автор

Bhaiya, sahi mai maja aa gaya, poora samaj aa gaya, ek baar mai, khud algo banayi maine aapke samjaane k baad, thodi mistake kardi thi, aapka code dekha phir correct kar li, thank you bhaiya, I wish you good health and great life ahead..

monotonic_non_decreasing
Автор

incase the array is all of negative elements and you want subarray of atleast 1 size then you have to add this code after Kadane's algo
if(maxsum==0)
{
maxsum=a[0];
for(int i=1;i<n(a.size);i++)
if(a[i]>maxsum) maxsum=a[i];
}

extremesatyaiitjeeair
Автор

Bhaiya sach me pure youTube pr ap or hi ho jo achhe se explain krte ho love ❤ you dil se bhaiya

karanrai
Автор

for all negative values ---->

class Solution {
public:
int maxSubArray(vector<int>& nums) {
int current = 0;
int max =

for(int i = 0; i < nums.size(); i++){
current = current + nums[i];

if(current > max){
max = current;
}

if(current < 0){
current = 0;
}
}
return max;
}
};

rohitk
Автор

Bhaiya. Abhi urvi didi ka explanation dekha . Smjh ni aya.. fir search kra kaden's algo. Apka search ke top pe aya. 1 bar m smjh aa gya. Ye. 🙏Thanks a lot.

sahilarora
Автор

Thank you anuj bhaiya aapne jo samjhaya kadane algo ko itne easiest way me wo koi aur nhi samjha paaya aap hamare guru ho programming ke again thank you 3000❤️

mohammadbilal
Автор

It can easily handle negative elelments also

class Solution{

long maxSubarraySum(int arr[], int n)
{
long sum=0;
long maxi=arr[0];
for(int i=0;i<n;i++){
sum+=arr[i];
if(sum>maxi){
maxi=sum;
}
if(sum<0){
sum=0;
}
}
return maxi;
}
}

__shivamverma
Автор

I tried this algo from apna college also, no compe to this elaboration 🤝🏻

Rakshit_Jain
Автор

c++ code for -ve value also run in this code
int maxsum=INT_MIN;
int currsum=0;
for(int i=0;i<n;i++)
{
currsum+=arr[i];
if(currsum>maxsum){
maxsum=currsum;
}
if(currsum<0){
currsum=0;
}

}
return maxsum;
}

chiragarora
Автор

This is the easiest explanation on kadane's Algorithm by far that i have seen on YT. Thank you for explaining the though process.

TaherAli-wbob
Автор

Works for every cases:
int maxSubarraySum(int arr[], int n){


int currMax=0;
int Max=0;
for(int i=0;i<n;i++){
if(i==0){
currMax=arr[i];
Max=currMax;
continue;
}
currMax+=arr[i];
if(currMax<arr[i]){
currMax=arr[i];
}
if(currMax>=Max){
Max=currMax;
}
}
return Max;
}

kritartha
Автор

for all negative values:
class Solution {
public int maxSubArray(int[] nums) {
int currSum = 0;
int maxSum = nums[0];
for(int i=0;i<nums.length;i++){
currSum+=nums[i];
if(currSum>maxSum){
maxSum = currSum;
}
if(currSum<=0){
currSum = 0;
}
}
return maxSum;
}
}

nikslogy
Автор

Nice Explanation.I found one error .maxSum should be initialized by a[0] as for example if the first element is -1, then some test cases will be failed .And for all negative it will be replaced by INT_MIN

rajattiwari