circular_Sum in array


please help me where i am doing mistake or logic is wrong.

Hello @mohsin_khan you have to think of the circular case as well.
like:
The maximum subarray sum in circular array is maximum of following

Maximum subarray sum in non circular array

Maximum subarray sum in circular array.

Example - [1,2,5,-2,-3,5]

Steps -

Find the maximum subarray sum using Kadane Algorithm. This is maximum sum for non circular array.


1+2+5 = 8

For non circular sum,


****************8

-2-3 = -5

Step 2) Now find the total sum of array = 1 + 2 + 5 -2 - 3 + 5 = 8

Step 3) The max subarray sum for circular array = Total Sum - Minimum subarray Sum

= 8 - (-5) = 8 + 5 = 13

As illustrated above, substracting minimum subarray sum from total sum gives maximum circular subarray sum.

Answer = Max ( Non circular max sum + circular max sum ) = max(8,13) = 13

@mohsin_khan https://ide.codingblocks.com/s/353150
Happy Learning!!

1 Like

I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.

On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.