zoukankan      html  css  js  c++  java
  • 寻找最大子数组

    package greast_subarray;
    
    import java.util.Scanner;
    
    public class max {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            int size;
            Scanner in=new Scanner(System.in);
            size=in.nextInt();
            int a[]=new int[size];
            for(int i=0;i<size;i++){
                a[i]=in.nextInt();
            }
            System.out.println(FindGreatestSumOfSubarray(a));
        }
        public static int FindGreatestSumOfSubarray(int[] a){
            int sum=a[0];
            int temp=0;
            int end=0;
            int len=a.length;
            for(int i=0;i<len;i++){
                temp+=a[i];
                if(temp>sum){sum=temp;end=i;}
                if(temp<0){temp=a[i];}
                
            }
            temp=0;
            int sum1=0;
            for(int i=len-1;i>end;i--){
                temp+=a[i];
                if(temp>sum1){sum1=temp;}
            }
            return sum+sum1;
        }
    }

    验证:

                              

  • 相关阅读:
    POJ 2154
    POJ 1286
    Polycarp's problems
    Greedy Change
    Goods transportation
    Ugly Problem
    Happy Matt Friends
    Dense Subsequence
    Ray Tracing
    Batch Sort
  • 原文地址:https://www.cnblogs.com/x-m-/p/6634320.html
Copyright © 2011-2022 走看看