Maximum Subarray (Kadane)

Problem

Return the greatest sum of any nonempty contiguous subarray.

Examples

Example 1
Input: [-2,1,-3,4,-1,2,1,-5,4]
Output: 6
Example 2
Input: [1]
Output: 1

Input and output use JSON-compatible values. For linked-list and tree questions, arrays represent the node structure as described above. Your code should implement solve(input).

Write your solutionImplement solve(input). Your draft is saved in this browser.
Advertisement

How to solve Maximum Subarray (Kadane)

One approach is: Either extend the previous subarray or start a new one. The reference code demonstrates this method. Compare the example and edge-case tests, then consider time and space usage.

Time and space complexity

Discuss the dominant operations and any additional data structures used by your implementation.

Practise and improve

Choose JavaScript, TypeScript or Python, complete the starter code, then select Run Tests. Request a hint when you need guidance, or choose View solution and confirm if you would like to study the reference implementation.