首页 > 编程语言 >letcode算法--19.最大子数组和

letcode算法--19.最大子数组和

时间:2022-11-14 18:55:21浏览次数:46  
标签:return nums -- res sum 19 int 数组 letcode

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

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

方法一:动态规划

class Solution {
    public int maxSubArray(int[] nums) {
        int n = nums.length;
        if(n < 2){
            return nums[0];
        }else {
            for (int i = 1; i < n; i++) {
                if (nums[i - 1] < 0) {
                    nums[i] = nums[i];
                }
                if (nums[i - 1] > 0) {
                    nums[i] = nums[i - 1] + nums[i];
                }
            }
            Arrays.sort(nums);
            return nums[n - 1];
        }
    }
}

方法二:贪心

class Solution {
    public int maxSubArray(int[] nums) {
        int n = nums.length;
        int res = Integer.MIN_VALUE;
        int sum = 0;
        for (int i = 0; i < n; i ++){
            sum += nums[i];
            res = Math.max(res,sum);
            if (sum < 0){
                sum = 0;
            }
        }
        return res;
    }
}

  

标签:return,nums,--,res,sum,19,int,数组,letcode
From: https://www.cnblogs.com/xinger123/p/16890031.html

相关文章

  • Spark与Iceberg整合写操作-INSERT INTO,MERGE INTO,INSERT OVERWRITE,DELETE FROM,UPDATE,s
    1.8.7Spark与Iceberg整合写操作1.8.7.1INSERTINTO"insertinto"是向Iceberg表中插入数据,有两种语法形式:"INSERTINTOtblVALUES(1,"zs",18),(2,"ls",19)"、"INSERT......
  • 手写堆
    voidheapup(){ inti=a[0]; while(i>1&&a[i]<a[i/2]){ swap(a[i],a[i/2]); i/=2; }}voidheapdown(){ inti=1,j; while(i*2<=a[0]){ if(i*2==a[0]||a[i*2]<......
  • GeoServer和ArcGISServer的WMTS服务怎么发布和调用
    ArcGISServerWMTS服务发布与使用:https://www.fengjinwei.com/blog-1116408.htmlgeoserver发布wmts服务并使用arcgisjs4.x调用:https://blog.csdn.net/FlyToTheWorld/art......
  • Spark与Iceberg整合写操作-没有
    1.9Flink1.13.5与Iceberg0.12.1整合目前Flink支持使用DataStreamAPI和SQLAPI方式实时读取和写入Iceberg表,建议大家使用SQLAPI方式实时读取和写入Iceberg表。Icebe......
  • mysql8创建组合索引
    https://wenku.baidu.com/view/63898d1d0a12a21614791711cc7931b764ce7b40.html?wkts=1668415162513&bdQuery=mysql8+%E7%BB%84%E5%90%88%E7%B4%A2%E5%BC%95https://www.c......
  • ar家具电子沙盘互动展示特点及优势-深圳华锐视点
    AR增强现实沙盘互动系统是数字化沙盘展示的发展和延伸,它通过对实时的视频图像进行信息传输和处理,形成交互式的三维图像画面,给客户带来更真实的全新体验与感受。“......
  • leetcode1346
    检查整数及其两倍数是否存在Category Difficulty Likes Dislikesalgorithms Easy(43.19%) 78 -TagsCompaniesUnknown给你一个整数数组arr,请你检查是否存在两个整数......
  • composer安装laravel失败原因
    上一次安装也没有遇到不知道为什么具体症状是第一,如:Problem1-phpunit/phpunit[9.5.10,...,9.5.x-dev]requireext-dom*->itismissingfromyoursystem.I......
  • 【网关开发】3.openresty lua使用lmdb数据库
    背景网关的高可用是比较重要的内容,即使etcd数据库挂掉,也可以根据现有的数据提供负载均衡应用所以采用几级缓存的形式cache-->lmdb-->etcd这里使用的是kong提供的插件......
  • 20221114_T4B_拓扑排序贪心
    题意L国正在举行各种会议,但是可怜的是L国只有一个主持人,每场会议的开始主持人都必须去主持会议,使会议得以开始,在会议开始后主持人可以离开。 主持人不会分身,他在一个时刻......