42. 连续子数组的最大和

NowCoder

题目描述

{6, -3, -2, 7, -15, 1, 2, 2},连续子数组的最大和为 8(从第 0 个开始,到第 3 个为止)。

解题思路

  1. public int FindGreatestSumOfSubArray(int[] nums) {
  2. if (nums == null || nums.length == 0)
  3. return 0;
  4. int greatestSum = Integer.MIN_VALUE;
  5. int sum = 0;
  6. for (int val : nums) {
  7. sum = sum <= 0 ? val : sum + val;
  8. greatestSum = Math.max(greatestSum, sum);
  9. }
  10. return greatestSum;
  11. }

42. 连续子数组的最大和 - 图1