先用O(n)时间计算S[i],表示i之前的总和.
S[j]-S[i]就是一段和, 对于一个固定的j,S[i]越小越好, 所以用O(n)时间计算对于每个j,它之前的最小S[],记为minS[i].这个统计过程也是线性一遍完成的.
最后,O(n)时间, 计算S[i]-minS[i], 取最大值返回.
先用O(n)时间计算S[i],表示i之前的总和.
S[j]-S[i]就是一段和, 对于一个固定的j,S[i]越小越好, 所以用O(n)时间计算对于每个j,它之前的最小S[],记为minS[i].这个统计过程也是线性一遍完成的.
最后,O(n)时间, 计算S[i]-minS[i], 取最大值返回.