描述
输入一个长度为n的整型数组array,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。
数据范围:
1 <= n <= 10^51<=n<=10
5

-100 <= a[i] <= 100−100<=a[i]<=100

要求:时间复杂度为 O(n)O(n),空间复杂度为 O(n)O(n)
进阶:时间复杂度为 O(n)O(n),空间复杂度为 O(1)O(1)

public class ContinueArraySum {public static void main(String[] args) {ContinueArraySum continueArraySum = new ContinueArraySum();int[] arr = {1,-2,3,10,-4,7,2,-5};int result = continueArraySum.FindGreatestSumOfSubArray(arr);System.out.println(result);}public int FindGreatestSumOfSubArray(int[] array) {if(null == array || array.length == 0){return 0;}int currenSum = 0; // 记录当前的和int maxSum = 0x80000000;for (int i = 0; i < array.length; i++) {if(currenSum<=0){// 如果小于等于0,那么再加上array[i]的和也是小于等于array[i],所以重新更新currenSum currenSum = array[i];}else{currenSum += array[i];}if(currenSum > maxSum){maxSum = currenSum;}}return maxSum;}
}

常考数据结构与算法: NC19 连续子数组的最大和相关推荐

  1. java数据结构与算法之连续子数组问题

    ①.问题描述 给定一个数组nums,0 < nums.length < 1000,请找出该数组的所有子数组并返回!!! 什么是连续子数组呢?比如原数组 nums = [1, 2, 3] 那 ...

  2. 【牛客刷题-算法】 NC19 连续子数组的最大和

    个人主页:清风莫追 推荐一款好用的面试.刷题神器牛客网:

  3. leetcode算法题--连续子数组的最大和

    原题链接:https://leetcode-cn.com/problems/lian-xu-zi-shu-zu-de-zui-da-he-lcof/ int maxSubArray(vector< ...

  4. 常考数据结构与算法:输出二叉树的右视图

    题目描述 请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图 上图树的右视图为:{1,4,3,7} 做此题之前可以先做下面3道题: 1. 常考数据结构与算法:求二叉树的层序遍历 2.常 ...

  5. 常考数据结构与算法:求二叉树的层序遍历

    题目描述 给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历) 例如: 给定的二叉树是{3,9,20,#,#,15,7}, 该二叉树层序遍历的结果是 [ [3], [9,20], ...

  6. 算法题解:连续子数组的最大和及其下标

    题目 输入一个整型数组,数组里有正数也有负数.数组中一个或连续的多个整数组成一个子数组.求所有子数组的和的最大值.要求时间复杂度为O(n). 举例 输入:2, -3, 4, 5, -9 输出:9 和最 ...

  7. 剑指 Offer 42. 连续子数组的最大和(官解)

    14天阅读挑战赛 努力是为了不平庸~ 算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于算 ...

  8. 连续子数组的最大和Java

    目录 题目要求 实现思路 代码展示 代码讲解 总结 题目要求 在一个数组中,找到连续子数组的最大和.重点是1.连续 2.最大 3.和.我们把它翻译成人话,举个例子:arr=[1, -2, 3, 1]. ...

  9. 连续子数组的最大和python_连续子数组的最大和

    题目:输入一个整型数组,数组里有正数也有负数.数组中一个或连续的多个整数组成一个子数组.求元素和值最大的那个子数组的和值. C#实现:public static int FindGreatestSum ...

最新文章

  1. P1049 装箱问题
  2. 为什么做小程序的时候要做定制开发小程序?
  3. 一些关于反汇编与逆向方面的博文分享
  4. NET问答: 到底是返回 null 好,还是 空集合 好?
  5. java saveas绝对路径_java实现对文件的各种操作(转)
  6. IE6下Png透明最佳解决方案(推荐) Unit PNG Fix
  7. php中连接网页头尾部,网页共用头部和尾部的部分方法
  8. IDEA创建GIT分支并提交
  9. 02.STM32开发板资源介绍与驱动
  10. mbot机器人自动超声波模式程序_测评 | mBot机器人秒变编程达人
  11. 利用Photoshop制作二寸照片
  12. 中国IT排名百强公司
  13. 如何让 MacBook 最适化 macOS Big Sur 和 Monterey 电池
  14. Jdon Framework
  15. c++ opencv图像拼接
  16. TYPE-C接口安卓手机直播快充领夹式无线麦克风方案
  17. 【无标题】IP地址段必须正好可以聚合成1个地址块
  18. 因为计算机丢失vrender,3DMAX打开文件时显示缺少dll解决方案
  19. 战地4 网页服务器地址,战地4修改的服务器地址
  20. 【NOIP2013】华容道 最短路优化搜索(spfa)

热门文章

  1. Java三大特性之封装
  2. day11 - 15(装饰器、生成器、迭代器、内置函数、推导式)
  3. ORACLE数据库,数据量大,转移数据到备份表语句
  4. Mysql5.7安装错误处理与主从同步及!
  5. OpenGL中的着色模式GL_SMOOTH与GL_FLAT
  6. CSP CCF 201709-2 公共钥匙盒(C++)满分代码,有注释
  7. LVS DR模式部署
  8. Linux安装及服务控制
  9. jquery可见性选择器(匹配匹配所有显示的元素)
  10. eclipse 如何使用svn