题目考察的知识点
主要是对于题目的理解
题目解答方法的文字分析
要求最长序列和,那么就用累加的方式,顺序遍历数组元素,每次累加后更新最大值。当这一段序列和小于0的时候就说明要重新开始一段序列的计算了,这个时候将变量sum置为0重新计算即可。
本题解析所用的编程语言
使用Java完成
完整且正确的编程代码
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param energy int整型一维数组 * @return int整型 */ public int maxEnergy (int[] energy) { // write code here int maxNum = Integer.MIN_VALUE, sum = 0; //sum表示正在遍历的连续序列的累加和 for(int i=0; i<energy.length; i++){ sum += energy[i]; maxNum = Math.max(maxNum,sum); if(sum<0) sum=0; } return maxNum; } }