力扣53. 最大子序和
生活随笔
收集整理的這篇文章主要介紹了
力扣53. 最大子序和
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定一個整數數組 nums ,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。
思路:每個循環中,sum表示以nums[i]結尾的最大子序和,res表示目前得到的最大子序和。當循環結束,res就是最終結果。
class Solution {public int maxSubArray(int[] nums) {int sum = 0;int res = nums[0];for(int i = 0;i<nums.length;i++){sum = Math.max(nums[i],sum+nums[i]);//sum表示以nums[i]結尾的最大子序和res = Math.max(res,sum);//res表示目前得到的最大子序和}return res;} }1.sum = Math.max(nums[i],sum+nums[i])
當前以i結尾的最大子序和,是在前者基礎上比較得來的,要么nums[i]單獨做為sum,要么加上上一個sum
2.res = Math.max(res,sum)
res比較好理解,就讓他一直成為當前“老大”就行了
總結
以上是生活随笔為你收集整理的力扣53. 最大子序和的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 力扣35. 搜索插入位置
- 下一篇: 银鱼多少钱啊?