# 原地址
https://leetcode-cn.com/problems/maximum-subarray/
# 分析
- 通过dp来实现的
- 默认数组第一个值为sum值
- 计算一个sum值,如果sum值大于0,就把当前值和sum值相加
- 如果sum小于0,就不做操作
- 最后统计数组中的最大值
# 代码
```java
public int maxSubArray(int[] nums) {
int max = nums[0];
for (int i = 0; i < nums.length; i++) {
if (i - 1 >= 0 && nums[i - 1] > 0) {
nums[i] += nums[i - 1];
}
max = max > nums[i]?max:nums[i];
}
return max;
}
```

53. 最大子序和