Given an integer array nums, find the contiguous subarray with the largest sum and return that sum.
A subarray is a contiguous part of an array. The array may contain negative numbers.
Input: nums = [-2, 1, -3, 4, -1, 2, 1, -5, 4] Output: 6 Explanation: The subarray [4, -1, 2, 1] has the largest sum = 6.
Input: nums = [1] Output: 1 Explanation: Single-element array - the answer is the element itself.
Input: nums = [5, 4, -1, 7, 8] Output: 23 Explanation: The entire array sums to 23, which is the maximum.
nums = [-2, 1, -3, 4, -1, 2, 1, -5, 4]