• 连续子数组的最大和


    题目描述:输入一个整型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。

    实现语言:Java

    public class Solution {
        public int FindGreatestSumOfSubArray(int[] array) {
            int size=array.length;
            if(size==0||array==null){
                return -1;
            }
            int maxSum=array[0];
            for(int i=0;i<size;++i){
                int curSum=0;
                for(int j=i;j<size;++j){
                    curSum+=array[j];
                    if(curSum>maxSum){
                        maxSum=curSum;
                    }
                }
            }
            return maxSum;
        }
    }
    

     实现语言:Java

    public class Solution {
        public int FindGreatestSumOfSubArray(int[] array) {
            int size=array.length;
            if(size==0||array==null){
                return -1;
            }
            int maxSum=array[0];
            int curSum=array[0];
            for(int i=1;i<size;++i){
                if(curSum<=0){
                    curSum=array[i];
                }else{
                    curSum+=array[i];
                }
                if(curSum>maxSum){
                    maxSum=curSum;
                }
            }
            return maxSum;
        }
    }
    
  • 相关阅读:
    装饰设计模式
    Enum的基本使用
    java根据文件流判断文件类型(后缀名)
    Java正则表达式的用法
    java遍历Map
    java操作json
    struts2+ajax+jquery
    Hibernate注解
    oracle经典建表语句--scott建表
    Struts2 ui标签
  • 原文地址:https://www.cnblogs.com/xidian2014/p/10198351.html
Copyright © 2020-2023  润新知