zoukankan      html  css  js  c++  java
  • 最大子序列和(Go)

    给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。

    func maxSubArray(nums []int) int {
        if len(nums)==1{
            return nums[0]
        }
        dp := make([]int,len(nums))
        dp[0]=nums[0]     //边界
        for i:=1;i<len(nums);i++{
            if nums[i]+dp[i-1]>nums[i]{
                dp[i]=nums[i]+dp[i-1]   //递推关系式
            }else{
                dp[i]=nums[i]
            }
        }
        max:=dp[0]
        for i:=0;i<len(nums);i++{
            if dp[i]>max{
                max=dp[i]
            }
        }
        return max
    }
    

      

  • 相关阅读:
    设计模式
    设计模式
    设计模式
    设计模式
    设计模式
    设计模式
    OpenGL学习 (一)
    C#
    Unity
    [开发ing] Unity项目
  • 原文地址:https://www.cnblogs.com/lvpengbo/p/14452488.html
Copyright © 2011-2022 走看看