关注
public class Solution {
public static int FindGreatestSumOfSubArray(int[] array) {
int maxCur = 0; // 保存返回的结果
if(array.length == 0){
return 0;
}else { // -2,-8,-1,-5,-9 解决全为负数的时候,maxCur不能为0 的问题 ****修改1*******
maxCur = array[0];
}
//
int totalNum = maxCur; // 保存从某个位置为起点累加所有的数,得到的和
for(int i=1; i<array.length; i++){
// 最大连续子序列的和不一定从第一个元素开始算起
// 当前面的数之和小于当前元素,当前最大值取“下一个元素”与“原最大值”之间的较大者
// ---------------------------------------------------
if(totalNum < 0){ // ****修改2*******
maxCur = Math.max(array[i], maxCur);
totalNum = array[i]; // 只要原起点到当前位置的数字和小于0,就更新totalNum,即更新起点
}else{
totalNum += array[i];
if(totalNum > maxCur){ // 最新的起点到当前位置的和>原来的最大值时,更新最大值
maxCur = totalNum;
}
}
// ----------------------------------------------------
}
return maxCur;
}
/**
public static void main(String[] args) {
int result = FindGreatestSumOfSubArray(new int[]{1,2,3,4,5}); // -2,-8,-1,-5,-9 // 1,-2,3,4,5,6,-20,8
System.out.println(result);
}
*/
}
点赞
相关推荐
昨天 14:46
河南科技大学 前端工程师 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 这个offer值得去吗? #
23025次浏览 187人参与
# 上班苦还是上学苦呢? #
345672次浏览 2073人参与
# 联宝杯大学生创新大赛,你的技术值得产业级答案 #
48160次浏览 521人参与
# 如果春招能重来,我会___ #
23274次浏览 246人参与
# 实习怎么做才有更好的产出 #
50179次浏览 458人参与
# 你会因为行情,降低找工作标准吗? #
36120次浏览 296人参与
# 在爱玛,骑向未来 #
14700次浏览 333人参与
# 字节开奖 #
153156次浏览 711人参与
# 我的秋招“寄”录 #
476623次浏览 3064人参与
# 面试线索爆料 #
131098次浏览 706人参与
# 提名点击就挂的公司 #
144359次浏览 492人参与
# 刚入职就____,这样正常吗? #
143605次浏览 691人参与
# AI coding的好用工具分享 #
88643次浏览 567人参与
# 字节求职进展汇总 #
1850982次浏览 15434人参与
# 找工作以来,你最看不惯__ #
79529次浏览 594人参与
# 大学四年该怎么过,才不算浪费时间? #
23976次浏览 107人参与
# 硬件人秋招的第一个offer #
129160次浏览 1473人参与
# AI“智障”时刻 #
40496次浏览 195人参与
# 业务面应该做哪些准备 #
128204次浏览 1345人参与
# 双非本科求职如何逆袭 #
1651319次浏览 13097人参与
# 双非应该如何逆袭? #
588697次浏览 6409人参与
# 制造业的秋招小结 #
157454次浏览 2136人参与

