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

最大子数组和

时间:2023-02-01 22:55:06浏览次数:39  
标签:pre 最大 nums max length 数组 Math

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

子数组 是数组中的一个连续部分。

const maxSubArray = (nums = [-2,1,-3,4,-1,2,1,-5,4]) => {
    const length = nums.length
    if(length === 1) return nums[0]
    let pre = nums[0], max = nums[0];
    for(let i = 1; i < length;i++){
        pre = Math.max(pre + nums[i], nums[i]);
        max = Math.max(max, pre);
    }
    return max
};

  Leecode 提交通过

标签:pre,最大,nums,max,length,数组,Math
From: https://www.cnblogs.com/zhenjianyu/p/17084406.html

相关文章

  • 【基础知识笔记】004 matlab-矩阵和数组的关系
    之前以为是两种东西,今天看了mathworks的官网才知道所有MATLAB量都是多维数组,与数据类型无关。矩阵是指通常用来进行线性代数运算的二维数组1.数组创建要创建每行包......
  • Java(14)数组
    一、数组的基本概念1、什么是数组数组是相同类型元素的集合。创建数组的时候,Java就会再内存中分配一段连续的空间来存放数组的内容。每一个数组内容都有自己的编号,这......
  • C语言实现查找一组数中的最大和最小值
    查找一组数中的最大、最小值/***查找一组数中的最大数*@paramnums数组指针*@paramstepsizeof(type)*@paramn该组数中有几个数*@return未找到返......
  • 算法随想Day1【数组】| LC704-二分查找、LC27-移除元素
    LC704.二分查找二分法编码时的难点,在于对数组边界问题的处理上。处理该问题的思想有两种,这两者的区别是基于数学里区间的概念去解释的。对于区间,[1,1]的取值是合理的,而[......
  • P3374 树状数组 1
    题目链接用途:以O(logn)的复杂度维护前缀和这个讲的超级清楚我就不写了(这里只贴下具体代码实现:lowbit函数:查询第x个元素的前缀和:将区间的第i个元素增加v:......
  • C语言基础:结构体对齐规则与0字节数组
    C语言基础:结构体对齐规则与0字节数组不同的编译器和系统默认的对齐规则会有差异,这里我使用的win32的MinGWC语言结构体一般是默认四字节对其的。结构体对其规则一般的,C语言结......
  • 递归先序输入构造一颗二叉树并输出并求从根结点出发的最大带权和 (c++)
    #include<iostream>#include<cstdio>usingnamespacestd;typedefstructBiTNode//一颗二叉树的结构体{intdata;structBiTNode*lchild,*rchiild;}BiTNode,......
  • 数据结构——最大堆
    一、堆堆(英语:heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质:堆中某个节点的值总是不大于或不小于其父节点......
  • 数据结构——动态数组
    简介数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。因此可以通过索引(Index)计算出某个元素的地址。 数组特点索引(即下标)......
  • JavaScript 数组去重
    JavaScript中有多种方法可以实现数组去重,下面是几种常用的方法:1、使用Set去重:Set数据结构中不能有重复元素,可以将数组转成Set类型,再转回数组。letarr=[1,2,3,4......