最大子数组和Python解法
给你一个整数数组 nums
,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
子数组 是数组中的一个连续部分。
例:
输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。
#解析:因为本题只用求出连续子序列的最大和,所以求出每个位置能达到的最大值即可。
class Solution(object):def maxSubArray(self, nums):""":type nums: List[int]:rtype: int"""if len(nums) == 0: # 数组为空的情况return 0dp = [0] * len(nums) # 初始化dp数组dp[0] = nums[0] # 第一个元素直接记录即可res = dp[0] # 若数组中只有一个元素,直接返回res即可for i in range(1, len(nums)): # 从1开始遍历dp[i] = max(dp[i-1] + nums[i], nums[i]) # 若前一位的dp值小于0,则重新开始记录,小于0对后面的计算没有加成res = max(res, dp[i]) # 记录最大的dp值即可return res # 返回结果
最大子数组和Python解法相关推荐
- LeetCode 题 - 53. 最大子序和 python解法
题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续 ...
- 最大子数组和js解法
题目: 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 子数组 是数组中的一个连续部分. 示例 1: 输入:nums = [-2,1,-3, ...
- LintCode Python 简单级题目 41.最大子数组 - 44.最小子数组和
题目1 最小子数组 描述: 给定一个整数数组,找到一个具有最小和的子数组.返回其最小和. 注意事项 子数组最少包含一个数字 您在真实的面试中是否遇到过这个题? Yes 样例 给出数组[1, -1, - ...
- 华为OD机试用Python实现 -【几何平均值最大子数组】| 2023年3月被抽中
华为OD机试题 最近更新的博客 华为 OD 机试 300 题大纲 几何平均值最大子数组 题目描述 输入描述 输出描述 说明 示例一 输入 输出 说明 示例二 输入 输出 说明 Python 代码实现 ...
- Python:实现max sub array最大子数组算法(附完整源码)
Python:实现max sub array最大子数组算法 from __future__ import annotations def find_max_sub_array(A, low, high ...
- 华为OD机试 - 几何平均值最大子数组(Java JS Python)
题目描述 从一个长度为N的正数数组numbers中找出长度至少为L且几何平均值最大子数组,并输出其位置和大小.(K个数的几何平均值为K个数的乘积的K次方根) 若有多个子数组的几何平均值均为最大值,则输 ...
- 【华为OD机试真题 python】几何平均值最大子数组【2023 Q1 | 100分】
■ 题目描述 [几何平均值最大子数组] 从一个长度为N的正数数组numbers中找出长度至少为L且几何平均值最大子数组,并输出其位置和大小.(K个数的几何平均值为K个数的乘积的K次方根) 若有多个子数 ...
- LeetCode 215. Kth Largest Element in an Array--数字第K大的元素--最大堆或优先队列--C++,Python解法
题目地址:Kth Largest Element in an Array - LeetCode Find the kth largest element in an unsorted array. N ...
- LeetCode 746. Min Cost Climbing Stairs--动态规划--Java,C++,Python解法
题目地址:Min Cost Climbing Stairs - LeetCode LeetCode 动态规划(Dynamic programming)系列题目:LeetCode 动态规划(Dynami ...
最新文章
- js 后台调用前台的JS
- 中国人工智能学会通讯——机器人组件技术在智能制造系统中的应用
- Matlab | Matlab从入门到放弃(14)——基于Matlab的多变量数据分析
- MyBatis 翻页的几种方式和区别?
- 新手如何快速上手Linux,韦东山告诉你。
- linux 查看其他磁盘分区,Linux 查看磁盘分区.pdf
- 如何利用DTS数据同步功能,快速创建数据同步作业
- [React] 尚硅谷 -- 学习笔记(六)
- ASP.NET页面之间传值的方式之Cookie(个人整理)
- 语言程序设计赵山林电子版_【特别策划】崇州“老市长”赵抃系列之一:做官要像江水保持清白...
- 与计算机技术发展密切相关的科学家,关于计算机科学与技术的发展趋势探究
- 基于Android手机酒店客房预订系统
- 笔记本无线上网方式大全 (转)
- C语言学习笔记(浙大翁恺版)第一周
- 职教平台粉笔科技递交港股IPO招股书:2021年1-9月营收26.3亿
- CICD系列之k8s
- python线性结构图_Python学习线路图 -蓝鸥
- Python 基于 opencv 的车牌识别系统, 可以准确识别车牌号
- mapper代码上怎么出现mybatis-plus 的蓝色小鸟的图标,找不到mapper路径(解决方法)
- c语言 /*知识点全概要(更新中)
热门文章
- 在StackBlitz上setup SAP Spartacus
- 使用literal或者绑定变量执行SAP HANA SQL语句
- SAP应用有可能改造成Serverless架构么?
- SAP WebClient UI的会话重启原理
- 在SAP HANA Express Edition里创建数据库表
- SAP CRM user参数CRM_UI_PROFILE是在哪行ABAP代码里读取的
- 使用ABAP代码获得Netweaver环境变量
- setProperty will trigger ui re-render 南京同事提的问题
- 在SAP Hybris commerce Storefront里购物下单
- 如何使用Javascript 访问local部署的YAAS service