数组中连续子数组的最大和

数组中连续子数组的最大和

简要解析:
{2,-3,-4,9,15,12,-2,6}的连续子数组最大值为40。
(从9到6的连续子数组的和,为最大子数组和)

package com.zzh;
public class Main {
    public static void main(String[] args) {
        int[] array={2,-3,-4,9,15,12,-2,6};
        int result=maxArray(array);
        System.out.println("连续最大值为"+result);
    }
    public static int maxArray(int[] array){
        int allArray=array[0];
        int endArray=array[0];
        for(int i=1;i<array.length;i++){
            endArray=max(endArray+array[i],array[i]);
            allArray=max(endArray,allArray);
            //判断连续最大子数组。
        }
        return allArray;
    }
    public static int max(int a,int b){
        return a>b?a:b;
    }
}

注:本题还可以通过输出具体的子数组,使得结果更明了,具体方式不再赘述。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值