题解 | #连续子数组的最大和#
连续子数组的最大和
https://www.nowcoder.com/practice/459bd355da1549fa8a49e350bf3df484
import java.util.*;
public class Solution {
public int FindGreatestSumOfSubArray(int[] array) {
//创建DP数组
int dp[]=new int[array.length];
//初始化DP数组
dp[0]=array[0];
//对于当前位置的最长长度就是比较当前位置array数组元素和dp数组上一个位置的元素+当前array数组元素谁的值大
for(int i=1;i<array.length;i++){
dp[i]=Math.max(dp[i-1]+array[i],array[i]);
}
//找到最大值
int max=dp[0];
for(int i=0;i<dp.length;i++){
if(dp[i]>max){
max=dp[i];
}
}
return max;
}
}
查看2道真题和解析