`

给定一个整数数组,找出总和最大的连续数列

阅读更多

题目:https://leetcode-cn.com/problems/contiguous-sequence-lcci

给定一个整数数组,找出总和最大的连续数列,并返回总和。

 

示例:

 

输入: [-2,1,-3,4,-1,2,1,-5,4]

输出: 6

解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。

 

解题:

用变量去记录连续数列总和的最大值。

用另一个变量记录当前位置可累积到的总和,若该值需大于0,否则置为0。(此处就是用了动态规划的思想)

即:f(n)=max(f(n-1)+n,0)

 

 

class Solution {
    public int maxSubArray(int[] nums) {
        if(nums==null || nums.length==0){
            return 0;
        }
        int max=nums[0];
        int dp=0;
        for(int i=0;i<nums.length;i++){
            int tmp=dp+nums[i];
            max=Math.max(tmp,max);
            dp=tmp>0?tmp:0;
        }
        return max;
    }
}

 

 

 
分享到:
评论

相关推荐

    数列求和总结

    设\(\{a_n\}\)是一个等差数列,求和\(\sum_{n=1}^{N} a_n\)。 - **方法:**将数列正序和倒序相加,得到的新数列每一项都是相同的,从而可以轻松求出总和。 #### 综合题目解析: 1. **求数列\(\{a_n\}\)的前\(n\)...

    2014届高考数学一轮 知识点各个击破 第五章 课时跟踪检测(三十三)数列的综合应用 文(含解析)新人教A版

    第六题通过解线性方程组,找出数列{an}的通项公式和前n项和Sn的表达式,然后利用绝对值不等式确定n的最小整数值。 第七题涉及到等比数列的前n项和的性质,当S1,2S2,3S3成等差数列时,可以推导出等比数列的公比。 ...

    数列求和.ppt课件PPT课件.pptx

    这个概念涉及到对一系列数值进行加总,以便找出它们的总和。在处理数列求和时,我们通常会遇到两种基本类型的数列:等差数列和等比数列。 等差数列是具有相同差值的数列,其前n项和可以使用公式S_n = n/2 * (a_1 + ...

    高考数学(理)一轮复习讲义 6.1 数列的概念与简单表示法.docx

    例如,通项公式an=3n+5表示的是一个递增数列,其定义域为正整数集合N+。 递推公式则是描述数列中某一项与其前一项或前几项关系的公式,常常用于已知数列的部分项求解整个数列的情况。例如,如果知道数列的第一项a1...

    人教版等差数列选择题专项训练单元质量专项训练试题.pdf

    这类问题可以通过寻找符合这两个条件的最小数开始,然后找出公差(两个相邻数之间的差),从而确定等差数列的通项公式。例如,8是满足条件的最小数,因为它除以3余2,除以5余3,之后每增加15(3和5的最小公倍数),...

    算法-连续整数的和(51Nod-1138)(包含源程序).rar

    在本题中,目标是求解一系列连续整数的和,这可能包括找出一个特定数列的和,或者找到满足特定条件的连续整数序列。 首先,我们需要理解连续整数和的概念。连续整数和是指从某个整数开始,包括这个整数在内,到另一...

    欧拉计划.doc

    给定一个大整数,找出其中连续5个数字的最大乘积。这通常涉及到滑动窗口算法,通过移动窗口在整数中查找最优解。 **关键概念**: - **滑动窗口**:在大整数中移动一个固定大小的窗口,计算窗口内数字的乘积。 - **...

    CodeCollection:在HackFMI 3期间用于处理开源代码收集想法的存储库-Source code collection

    找出1到n之间所有数字的总和 将数字列表转换为数字 检查给定序列是否单调递增。 检查给定的数字是否包含给定的数字。 检查给定数字是否包含给定列表中的所有数字。 在斐波那契数列中找到第n个数字 检查给定数字是否...

    C语言编程题(绝无仅有)

    这段代码实现了一个简单的数列生成器,其中包含一个 for 循环来计算数列中的每一项,并最终输出整个数列的总和。这里的关键知识点包括: - **循环控制**:使用 `for` 循环来控制数列的生成过程。 - **条件判断**:...

    台州市2023年青少年信息学竞赛复赛试题(初中组)

    **解题思路**:此类题目往往要求将一个数列划分为若干个连续的子序列,使得某个条件得到满足。可以考虑使用贪心算法、动态规划等方法来寻找最优解。 综上所述,这些题目旨在测试学生在算法设计、数据分析等方面的...

    中考数学二轮复习专题练习下探究规律_等差数字型新人教版202003202178

    4. 第四题是找出数列的通项公式,通过观察可以发现数列是一个公差为2的等差数列,所以第n个数是2n。 5. 第五题要求根据给定的正方形面积计算模式推导出一般形式,根据给出的例子,面积S可以表示为4n+2。 6. 第六题...

    java小练习,Java练习小程序,Java必用

    - 给定一个整数数组,找出其中的最大值和最小值。 - 可以使用循环结构遍历数组,并记录下最大值和最小值。 45. **素数判断**: - 判断一个给定的数是否为素数。 - 可以使用循环结构进行判断,并返回判断结果。 ...

    Technical_Interview_Q-s:问题解答

    给定 2 个整数数组,确定第二个数组是第一个数组的旋转版本。 Ex. Original Array A={1,2,3,5,6,7,8} Rotated Array B={5,6,7,8,1,2,3} 以迭代和递归方式编写斐波那契数列(奖励:使用动态编程) 查找数组中仅...

    全国通用2016版高考数学考前三个月复习冲刺第三篇回扣专项练4数列理

    7. 对于数列 an =log(n+1)(n+2),我们要找到一个k,使得 a1·a2·a3·…·ak 为整数。注意到 an 可以写为 log(n+1)(n+2) = log(n+2) - log(n+1),这就是所谓的部分分数分解。当将这些项相乘时,对数项会相互...

    安徽省六安市舒城中学2016年高二数学暑假作业第21天文.doc

    数列是数学中的一个基本概念,由按一定顺序排列的一列数构成,常用于解决实际问题。以下是根据文档内容解析的知识点: 1. 数列的应用: - 通过数列解决实际问题是高中数学的重要部分。例如,问题中的选择题和解...

    c语言常用编程学习

    - 初始化一个最大值变量 max 及其对应的索引 index。 - 遍历数组,寻找最大值及其索引。 - 返回最大值及其索引。 #### 18. 字符串处理 题目要求实现一个函数,该函数接受一个字符串指针 s,将 s 中的所有奇数索引上...

    2021年中考一轮复习九年级数学专题:找规律之数字变化类(二).doc

    8. 数列的排列规律:第8题中正整数的排列形成了一种交错排列,可以找出每行的规律,然后确定2019的位置。 9. 三数之和问题:第9题中,每个方格的数与另外两个连续方格的数之和恒为19,可以分析A+H+M+O的和。 10. ...

    程序员面试精选

    - **应用场景**: 给定一个整数数组,找到其中具有最大和的连续子数组,并返回其最大和。 ### 4. 在二元树中找出和为某一值的所有路径 - **知识点**: 二叉树的遍历、路径记录。 - **应用场景**: 遍历二叉树的所有...

    2022年部编人教版五年级数学上册期中考试题【及参考答案】.pdf

    9. 同余问题:给定一个数除以几个数的余数,要求找出满足条件的最小自然数,这需要运用同余方程的解决方法。 10. 平均数的改变:当一个数改变导致平均数上升,我们可以根据平均数的定义来求出原始数值。 二、判断...

    人教一年级数学下册期末检测⑧卷及答案.pdf

    - 理解数列中数的规律,例如找出一个数列中的相邻数。 9. 应用加减法解决实际问题 - 例如分配牛奶盒数是否足够,以及根据给定数量推算缺少或多余的单位。 10. 数据的收集与分析 - 分析一组数据,找出最多和最少...

Global site tag (gtag.js) - Google Analytics