53.go 264 B

1234567891011
  1. package main
  2. // important. maxLeft: maximum of sum(nums[x], nums[i])
  3. func maxSubArray(nums []int) int {
  4. max, maxLeft := nums[0], nums[0]
  5. for i := 1; i < len(nums); i++ {
  6. maxLeft = maxInt(maxLeft+nums[i], nums[i])
  7. max = maxInt(max, maxLeft)
  8. }
  9. return max
  10. }