当前位置:网站首页>【LeetCode】53. 最大子数组和
【LeetCode】53. 最大子数组和
2022-07-29 14:31:00 【酥酥~】
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
子数组 是数组中的一个连续部分。
示例 1:
输入:nums = [-2,1,-3,4,-1,2,1,-5,4]
输出:6
解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。
示例 2:
输入:nums = [1]
输出:1
示例 3:
输入:nums = [5,4,-1,7,8]
输出:23
提示:
1 <= nums.length <= 105
-104 <= nums[i] <= 104
题解:
动态规划,dp数组存储每一位的最大值情况,那么对于每个i来说,dp(i) = max{ dp(i-1)+nums[i], nums[i] },那么最大和就是dp数组中的最大值
//C++
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int len = nums.size();
vector<int> dp(len);
dp[0] = nums[0];
for(int i=1;i<len;i++)
{
dp[i] = max(dp[i-1]+nums[i],nums[i]);
}
return *max_element(dp.begin(),dp.end());
}
};
class Solution(object):
def maxSubArray(self, nums):
n = len(nums)
dp = [0 for i in range(n)]
dp[0] = nums[0]
for i in range(1,n):
dp[i] = max(dp[i-1]+nums[i],nums[i])
return max(dp)
边栏推荐
- Violence recursion to dynamic programming 02 (very clever game of CARDS)
- 国产手机将用户变成它们的广告肉鸡,难怪消费者都买iPhone了
- C语言 4:汇编语言指令介绍
- 函数柯里化
- 如何使用SparkSQL做一些简单的数据分析和可视化展示?
- arcpy脚本制作arcgis工具箱注意事项
- The raised platform system based on JSP&Servlet implementation
- 【ArcGIS微课1000例】0030:ArcGIS利用MXD doctor工具分析并修复mxd地图文档
- ArcGIS Pro与ArcGis区别
- MySQL 是如何实现 ACID 的?
猜你喜欢

基于C语言仿真实现的粒子火焰系统

交叉编译工具链的安装和配置过程

【堡垒机小知识】硬件堡垒机是什么意思?其与云堡垒机有什么区别?

使用Xshell和Xftp7跑学校服务器记录

Map遍历 key-value 的4种方法

这 6 款在线 PDF 转换工具,得试试

测试时间的评估:开发时间的1/3~1/2

The reason for Apple's official price reduction has been found, and it is also facing declining sales and even inventory problems

【C语言】AI三子棋的成长之路

即时通讯-改变社交与工作状态的新型软件
随机推荐
PyQt5快速开发与实战 7.1 信号与槽介绍
第4章_3——索引的使用
苹果官方降价的原因找到了,它也面临销量下滑乃至出现库存问题
威纶通触摸屏制作自定义欢迎界面的几种方法介绍
这个 MySQL bug,99% 的人会踩坑!
全球级的分布式数据库 Google Spanner原理 热:报错
基于C语言实现一个社交系统
Work Efficiency - Fifteen minutes allows you to quickly learn Markdown syntax to proficient in typesetting practice notes
带你搞懂 Redis 中的两个策略
如何返回一个数字的所有质因数?
疫情之下的裁员浪潮,7点建议帮你斩获心仪offer
广州消防:高温天气火灾频发 消防安全不容忽视
Violence recursion to dynamic programming 02 (very clever game of CARDS)
MySQL 是如何实现 ACID 的?
Offensive EA&UML day arch - activity diagram: : Variable Actions (continue)
测试时间的评估:开发时间的1/3~1/2
A review of deep learning for beginners!
Introduction to several methods of making custom welcome interface on Weiluntong touch screen
图斑自上而下,自左而右顺序编码,按照权属单位代码分组,每组从1开始编码
从一道面试题说起:GET 请求能传图片吗?