15 ms

连续子数组的最大和

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

public class Solution {
public int FindGreatestSumOfSubArray(int[] array) {
//设置指针从0开始向右移动,如果当前指针 + 前面指针代表的和为sum,计算max
//如果sum > 0 移动 sum = sum
//如果素sum < 0 移动 sum归零 重写跳转指针
if(array == null){
return 0;
}
int i = 0;
int max = Integer.MIN_VALUE;
int sum = 0;
while(i < array.length){
sum = array[i] + sum;
max = max > sum ? max : sum;
if(sum < 0){
sum = 0;
}
i++;
}
return max;
}
}

全部评论

相关推荐

投递顺丰集团等公司6个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务