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

最大连续子串

问题描述:

给定一个由数字组成的数组,求出和最大的子数组

求解方法:

1.暴力法

选取所有连续和的可能性,O(n^2)

2.分析法

当遍历到第i个元素时,判断在它前面的连续子序列和是否大于0,如果大于0,则以位置i结尾的最大连续子序列和为元素i和前门的连续子序列和相加;否则,则以位置i结尾的最大连续子序列和为元素i。

3.动态规划

记s[i]是以a[i]结尾的最大子数组和

s[i+1]=max(s[i]+a[i+1],a[i+1])

s[0]=a[0];

遍历数组a[i]即可得到以每一项结尾的最大子数组和s[i],求出其中最大值

package offer_0831; import java.util.Collections; import java.util.LinkedList; import java.util.List; public class MaxSerialSubList { // 暴力法 - func1 - 略 // 分析法 Integer func2(List<Integer> nums) { int maxRes = 0; int resBefore = 0; for (Integer i : nums) { if (resBefore < 0) { resBefore = i; } else { resBefore = i + resBefore; maxRes = maxRes > resBefore ? maxRes : resBefore; } } return maxRes; } // 动态规划 Integer func3(List<Integer> nums) { List<Integer> res = new LinkedList<Integer>(); res.add(nums.get(0)); for(int i = 1;i< nums.size();i++){ res.set(i,res.get(i-1)+nums.get(i)>0?res.get(i-1)+nums.get(i):nums.get(i)); } return Collections.max(res); } }
http://www.jsqmd.com/news/1281773/

相关文章:

  • PreparedStatement的jdbc相关操作
  • 高效、免费、开源:GetQzonehistory让QQ空间历史说说备份变得简单
  • C++ noexcept关键字:从移动语义到容器性能优化的核心机制
  • 创世战车10K战力装配指南:从部件协同到实战优化
  • 想找优质专利轨道插座生产厂家?这些实用挑选技巧看完再也不踩坑
  • Cloudflare D1免费额度解析与优化技巧
  • Unity SSDLC框架:构建游戏开发全生命周期的安全免疫系统
  • 北京纯玩团深度对比:2-6人纯玩小团、一家一团定制游,到底哪个更值? - 速递信息
  • 数据结构实验(C语言):折半查找、哈希查找
  • Agentic AI实战:从概念到生产级智能体的架构设计与工程实践
  • 技术技能快速掌握:从基础到精通的系统方法论
  • 什么是完全二叉树?什么是叶子结点?一道题搞懂
  • ComfyUI-SUPIR终极指南:基于SDXL的智能图像超分辨率完整教程
  • 10-Gateway API
  • Leaf size is too small for the input dataset 解决办法
  • linux shell 各种括号作用详解()、(())、[]、[[]]、{}
  • 惠州惠城漏水检测维修一站式服务 - 本地正规防水补漏公司精选推荐(2026 最新)全域上门:卫生间 / 厨房 / 阳台 / 屋顶渗漏水免砸砖检测维修补漏全攻略 - 吉林同城获客
  • SpringBoot+Vue构建问卷调查系统的技术实践
  • 如何快速搭建私有搜索引擎:SearXNG Docker终极部署指南
  • NBM7100A芯片在低功耗物联网设备中的应用与优化
  • 暗黑2存档编辑器完全手册:零基础掌握角色与装备修改
  • Java微服务的七个常见架构错误:从超时配置到异常处理的生产级反例
  • SpringBoot拦截器读取流后不能再读取(详解)
  • 【第一章04】MQTT控制报文
  • Unity-XLua中Lua异常处理:构建跨语言稳定性的工程实践
  • Windows 11 添加网络打印机总是连接失败:从设备发现到 TCP/IP 端口的排查记录
  • 01 准备你的开发环境
  • 编写程序对比一帆风顺和历经波折两种状态下的作品风格,利用低谷心境打造差异化创意。
  • 量化交易策略可视化与实战复盘
  • Vosk-Browser:浏览器端离线语音识别的革命性解决方案