JAVA一次遍历

连续子数组的最大和

http://www.nowcoder.com/questionTerminal/459bd355da1549fa8a49e350bf3df484

记录当前的和 直到当前的和小于0,再重新开始;
每次记录完再与max进行对比。

public class Solution {
    public int FindGreatestSumOfSubArray(int[] array) {
        if (array==null || array.length==0) return 0;
        int max=array[0];
        int sum =0;
        for (int i=0;i<array.length;i++){
            if (sum>=0) sum +=array[i];
            else sum = array[i];
            if (sum>max) max = sum;
        }
        return max;
    }
}
全部评论

相关推荐

点赞 评论 收藏
分享
苗条的伊泽瑞尔最喜欢...:同28届被压力了,电科✌就不能去卷算法吗?把Java留给我们双非卷
投递快手等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务