关注
function maxSubSum(arr,left,right){ //console.log(right);
var leftMaxSum = rightMaxSum = 0;
//将这俩行代码放这里就会出错,是因为什么?
// var leftMaxBorderSum = rightMaxBorderSum = 0;
// var lefttemp = righttemp = 0;
if(left == right){
if(arr[left] > 0){
return arr[left];
}else{
return 0;
}
}
var center = Math.floor((left + right)/2);
var leftMaxSum = maxSubSum(arr,left,center);
var rightMaxSum = maxSubSum(arr,center+1,right);
//console.log(leftMaxBorderSum,rightMaxBorderSum);
//把代码放这里就不会出错,是因为什么?
var leftMaxBorderSum = rightMaxBorderSum = 0;
var lefttemp = righttemp = 0;
for(var i=center; i>=left; i--){
lefttemp += arr[i];
if(lefttemp >= leftMaxBorderSum){
leftMaxBorderSum = lefttemp;
}
}
for(var j=center+1; j<=right; j++){
righttemp += arr[j];
//console.log(j);
if(righttemp >= rightMaxBorderSum){
rightMaxBorderSum = righttemp;
}
}
console.log('['+left+','+right+']');
console.log(center+','+leftMaxSum+','+rightMaxSum+','+ (leftMaxBorderSum + rightMaxBorderSum));
return Math.max(leftMaxSum,rightMaxSum,(leftMaxBorderSum + rightMaxBorderSum));
}
var arr = [4,-3,5,-2,-1,2,6,-2];
console.log(maxSubSum(arr,0,7));
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你和你的mentor相处模式是__ #
3225次浏览 20人参与
# 如果公司降薪,你会跳槽吗? #
160172次浏览 938人参与
# 联宝杯大学生创新大赛,你的技术值得产业级答案 #
25984次浏览 320人参与
# 实习第一天,你在干什么 #
2150次浏览 14人参与
# 华为工作体验 #
322105次浏览 1409人参与
# 你会因为行情,降低找工作标准吗? #
2418次浏览 19人参与
# 非技术2024笔面经 #
501922次浏览 5038人参与
# 机械人与华为的爱恨情仇 #
158493次浏览 1055人参与
# 0offer互助地 #
773067次浏览 4756人参与
# 你是怎么和mt相处的? #
103032次浏览 507人参与
# 联想求职进展汇总 #
356399次浏览 2262人参与
# 运营人求职交流聚集地 #
247227次浏览 1124人参与
# 实习/项目/竞赛奖项,哪个对找工作更重要? #
113551次浏览 1196人参与
# 我的成功项目解析 #
531956次浏览 8611人参与
# 打工人的工作餐日常 #
97019次浏览 558人参与
# 26年哪些行业会变好/更差 #
66200次浏览 534人参与
# 蚂蚁求职进展汇总 #
170976次浏览 1291人参与
# 今年秋招还有金九银十吗 #
82770次浏览 514人参与
# 工作两年想退休了 #
271629次浏览 2048人参与
# 你总挂在第__面? #
14766次浏览 162人参与
# 简历上如何体现你的“AI”能力? #
20163次浏览 405人参与