| @@ -0,0 +1,11 @@ | |||
| class Solution: | |||
| def maxSubArray(self, nums): | |||
| max_val = -1000000000000 | |||
| current = -1000000000000 | |||
| for n in nums: | |||
| current = max(n, n + current) | |||
| max_val = max(max_val, current) | |||
| return max_val | |||
| s = Solution() | |||
| print(s.maxSubArray([8, -19, 5, -4, 20])) | |||
| @@ -0,0 +1,11 @@ | |||
| Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum. | |||
| Example: | |||
| Input: [-2,1,-3,4,-1,2,1,-5,4], | |||
| Output: 6 | |||
| Explanation: [4,-1,2,1] has the largest sum = 6. | |||
| Follow up: | |||
| If you have figured out the O(n) solution, try coding another solution using the divide and conquer approach, which is more subtle. | |||
| @@ -0,0 +1,3 @@ | |||
| #!/bin/bash | |||
| python3 main.py | |||