博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【leetcode之旅】数组- 53. 最大子序和
阅读量:2056 次
发布时间:2019-04-28

本文共 677 字,大约阅读时间需要 2 分钟。

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

示例:

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

进阶:

如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。

public class MaxSubArray {    public static void main(String[] args) {        int[] nums = {-2,1,-3,4,-1,2,1,-5,-4};        int result = maxSubArray(nums);        System.out.println(result);    }        public static int maxSubArray(int[] nums) {        int sum = 0;        int max = nums[0];        for (int i :nums){            //判断加上这个值和加之前的大小,变小了则只取本身,否则就取其之和            sum += i;            max = Math.max(max,sum);            if (sum < 0){                sum = 0;            }        }        return max;    }}

 

 

转载地址:http://hvslf.baihongyu.com/

你可能感兴趣的文章
《kubernetes权威指南·第四版》第二章:kubernetes安装配置指南
查看>>
Leetcode C++《热题 Hot 100-49》399.除法求值
查看>>
Leetcode C++《热题 Hot 100-51》152. 乘积最大子序列
查看>>
[Kick Start 2020] Round A 1.Allocation
查看>>
[Kick Start 2020] Round A 2.Plates
查看>>
Leetcode C++ 《第181场周赛-1》 5364. 按既定顺序创建目标数组
查看>>
Leetcode C++ 《第181场周赛-2》 1390. 四因数
查看>>
阿里云《云原生》公开课笔记 第一章 云原生启蒙
查看>>
阿里云《云原生》公开课笔记 第二章 容器基本概念
查看>>
阿里云《云原生》公开课笔记 第三章 kubernetes核心概念
查看>>
阿里云《云原生》公开课笔记 第四章 理解Pod和容器设计模式
查看>>
阿里云《云原生》公开课笔记 第五章 应用编排与管理
查看>>
阿里云《云原生》公开课笔记 第六章 应用编排与管理:Deployment
查看>>
阿里云《云原生》公开课笔记 第七章 应用编排与管理:Job和DaemonSet
查看>>
阿里云《云原生》公开课笔记 第八章 应用配置管理
查看>>
阿里云《云原生》公开课笔记 第九章 应用存储和持久化数据卷:核心知识
查看>>
linux系统 阿里云源
查看>>
国内外helm源记录
查看>>
牛客网题目1:最大数
查看>>
散落人间知识点记录one
查看>>