首页 > 其他分享 >leetcode53-最大子数组和

leetcode53-最大子数组和

时间:2022-08-18 17:01:48浏览次数:77  
标签:cur leetcode53 int max nums 累加 数组 最大

最大子数组和

  • dp

记录当前位置的累加和以及最大子数组和。
遍历数组并累加,如果发现累加和小于0,那么前面累加的东西反而会使得后面的和变小,那么直接丢弃,将累加和清零。

class Solution {
    public int maxSubArray(int[] nums) {
        int max = nums[0], cur = 0;
        for(int num : nums){
            cur += num;
            max = Math.max(max, cur);
            if(cur < 0) cur = 0;
        }
        return max;
    }
}

标签:cur,leetcode53,int,max,nums,累加,数组,最大
From: https://www.cnblogs.com/xzh-yyds/p/16599317.html

相关文章

  • 手写js 数组打平
    console.log("arrayflat");//1.因为只有数组才有concat方法,所以这里必须写入初始值空数组只能打平一层//constflat=(list)=>list.reduce((a,b)=>a.co......
  • 数组filter,find,map,some,every,reduce的用法简单梳理
    一、filter数组的过滤或筛选功能,根据筛选条件返回一个包含符合条件元素的新数组,不影响原数组,筛选条件写在一个函数中letarr=[{id:1,name:"a",age:18},......
  • 区间DP の 题(内含 最长回文串,石子合并,删除字符串,乘积最大,释放囚犯)
    乘积最大  由于题目给定的是m,需要分解成m+1部分的乘积,不难想到乘号刚好是m个,那么该题就转化成了m个乘号的插入方式。  最优子结构分析:    设数字字符串为a1a......
  • 差分数组入门
    差分数组什么是差分数组?差分数组:差分数组就是原始数组相邻元素之间的差。其实差分数组是一个辅助数组,从侧面来表示给定某一数组的变化,一般用来对数组进行区间修改的操......
  • vue中改变数组对象属性名名称
    letnape=[];for(leti=0;i<list.length;i++){letres=JSON.parse(JSON.stringify(list[i])......
  • python 中输出字典中的键、值最小、最大的项
     001、输出最小、最大的键或者值>>>dict1={"c":800,"d":600,"a":900,"b":700}>>>dict1{'c':800,'d':600,'a':900,'b':700}>>>min(dict1)......
  • js快捷抽取数组对象中某一属性值的集合
    一、Array.from方法array.from方法就是将一个类数组对象(具有length属性的对象)或者可遍历的对象转换成真正的数组varuser=[{id:1,name:"李四......
  • js 判断数组的7 种方法
    1.Array.isArray([])//true2.Object.prototype.toString.call([])//'[objectArray]'3.[].constructor===Array//true4.[]instanceofArray//true5.[]......
  • 手写 js数组reduce
    functionreduce(list,fn,...init){letprev=init.length>0?init[0]:list[0];for(leti=init.length>0?0:1;i<list.length;i++){......
  • LeetCode/最大相等频率
    给你一个正整数数组 nums,请你帮忙从该数组中找出能满足下面要求的最长前缀,并返回该前缀的长度从前缀中恰好删除一个元素后,剩下每个数字的出现次数都相同。1.双哈希表......