53. 最大子序和

package leetcode;

public class demo_53 {
    public int maxSubArray(int[] nums) {
        //动态规划问题
        int max;
        int[] arr =new int[nums.length];
        arr[0]=nums[0];
        max=nums[0];
        for(int i=1;i<nums.length;i++) {
            if(nums[i]<nums[i]+arr[i-1]) {
                arr[i]=nums[i]+arr[i-1];
            }
            else {
                arr[i]=nums[i];
            }
            if(max<arr[i]) {
                max=arr[i];
            }
        }
        return max;
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int[] nums= {-2,1,-3,4,-1,2,1,-5,4};
        demo_53 d53= new demo_53();
        System.out.println(d53.maxSubArray(nums));
    }

}

 

posted on 2021-04-02 16:10  一仟零一夜丶  阅读(43)  评论(0)    收藏  举报