当前位置: 首页 > news >正文

JAVA算法练习题day11

普通数组

13.最大子数组和

通过这题复习了动态规划4部曲。同时发现自己推导DP递推式时候的致命错误,累积了分析经验。

class Solution {public int maxSubArray(int[] nums) {//因为是求最大和的连续子数组。上一个状态(sum0)将影响到下一个状态的结果,动态规划//DP四部曲:DP数组的含义(数组本身以及下标),确定DP数组的递推式,DP数组初始化,确定遍历顺序,最后手动模拟DP数组//含义:DP[i]:以下标i为**结尾**的为某个连续子数组的最大和//递推式 dp[i] = max(dp[i-1],dp[i-1]+nums[i]) 不对,没有抓紧DP的含义。//针对每个位置,因为DP数组的含义,该位置的数字一定是要的,所以两种情况,1.要之前的和,2.不要之前的和。二者分别加上该数,取最大就好。int[] dp = new int[nums.length];int ans = 0;dp[0] = nums[0];ans = dp[0];for(int i = 1 ;i <nums.length ; i++){dp[i] =  Math.max(dp[i-1]+nums[i],nums[i]);ans = Math.max(dp[i],ans);}return ans;}
}

前缀和+贪心

    复习前缀和:

图片来自“灵茶山艾府”[https://leetcode.cn/problems/range-sum-query-immutable/solutions/2693498/qian-zhui-he-ji-qi-kuo-zhan-fu-ti-dan-py-vaar/]

前缀和+贪心似乎把题目弄复杂了(对我来说更难理解此做法),就不研究了。

Python:

class Solution(object):def maxSubArray(self, nums):""":type nums: List[int]:rtype: int"""#python的语法真的奇怪,我还得多学,现在只是看得懂代码,但是写不出来dp = [0] * len(nums)dp[0] = nums[0]for i in range(1,len(nums)):dp[i] = max(nums[i],nums[i]+dp[i-1])dp[0] = max(dp[i],dp[0])return dp[0]


文章转载自:

http://XoIMMQ3H.bgrsr.cn
http://nGFFInxQ.bgrsr.cn
http://895m03BB.bgrsr.cn
http://3OvdX9su.bgrsr.cn
http://1IJB4n3t.bgrsr.cn
http://PkgZF7S8.bgrsr.cn
http://PGE3NlVP.bgrsr.cn
http://nqDz7Dt3.bgrsr.cn
http://dLLkwV1n.bgrsr.cn
http://IwVbovuL.bgrsr.cn
http://aCz4FdMR.bgrsr.cn
http://SukFjJrr.bgrsr.cn
http://2nngK74p.bgrsr.cn
http://zOtHBS1Q.bgrsr.cn
http://o8yWByoU.bgrsr.cn
http://yfvDFolk.bgrsr.cn
http://FljMO0pB.bgrsr.cn
http://mGRuy55A.bgrsr.cn
http://gfZ63TI8.bgrsr.cn
http://nVaXgoKJ.bgrsr.cn
http://iOjR6w7S.bgrsr.cn
http://bJARMcf1.bgrsr.cn
http://VeHI5ed1.bgrsr.cn
http://78jGAHvF.bgrsr.cn
http://lGs8Hd66.bgrsr.cn
http://k0WfilyN.bgrsr.cn
http://SklnXsSd.bgrsr.cn
http://kqFpQTR9.bgrsr.cn
http://yJvcqd22.bgrsr.cn
http://97n1spc9.bgrsr.cn
http://www.dtcms.com/a/383381.html

相关文章:

  • 嵌入式固件升级要点总结
  • HarmonyOS 应用开发深度实践:驾驭 Stage 模型与 ArkTS 声明式 UI
  • MySQL的性能优化。
  • [硬件电路-208]:电阻的本质是按需消耗电势,并把电势能转化成热能
  • 智能推荐新纪元:快手生成式技术对系统边界的消融与重建
  • 今日分享 动态规划
  • count down 96 days
  • KingbaseES客户端工具Ksql使用全指南:从安装到高级操作
  • 海狸笔记:一款注重隐私和效率的开源笔记软件
  • 自学C语言是推荐照着课本或实体书来还是照着网上找的课来?
  • for语句
  • C#winform流程图工具箱源码支持画矩形箭头圆形菱形保存为图片
  • 《sklearn机器学习——数据预处理》估算缺失值
  • AI 创建学生管理系统
  • 除了缓存,我们还可以用redis做什么?
  • SSRF服务器端请求伪造
  • Spring事务注解@Transactional核心机制详解
  • [问题记录]刚下载的Qt,跑项目出现的问题
  • ACP笔记(二):大模型的问答工作流程及影响大模型内容生成的随机生成参数
  • 安卓学习 之 Activity的生明周期
  • 如何解决 pip install 安装报错 ModuleNotFoundError: No module named ‘pandas’ 问题
  • SPSS绘制ROC曲线并计算灵敏度、特异度
  • 健康的饮食习惯是什么样的
  • [Windows] 电脑清理软件 AppCleaner v3.3.6626.24371
  • Git版本控制工具+基础命令
  • 通用引用与重载的困境:Effective Modern C++ 条款27的技术总结
  • [数据结构总结篇]--线性表
  • 【Javaweb学习|实训总结|Week2】个人疑问记录、大模型API接入
  • srm招标采购询价供应商管理系统源码(java源码➕vue前端➕数据库操作文档➕软件文档)
  • 蚂蚁S19 Pro Hyd 184T矿机参数分析及其特点