软件工程第三次作业

题目要求

最大连续子数组和(最大子段和)

问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。

当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n

例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时,最大子段和为20。

-- 引用自《百度百科》

解题思路

从数组的左边界开始,从左到右处理,记录到目前为止已经处理过的最大子数组。

代码

925188-20180331114919561-19682914.png

单元测试

测试了了五种样例

1. 数组为空

925188-20180331122321910-153045547.png

2. 数组长度为1

925188-20180331122357991-238486090.png

3. 数组都为负数

925188-20180331121805850-1339837369.png

4 .数组都为正数

925188-20180331121845945-1263936952.png

5. 数组有正数有负数

925188-20180331122014274-557444052.png

测试结果

925188-20180331122133954-2031576515.png

代码链接:https://git.coding.net/xiaoxiaoyuxia/kewang.git

转载于:https://www.cnblogs.com/fgh19970720/p/8681694.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/367487.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用HTML5 IndexDB存储图像和文件

使用IndexedDB存储图像和文件 有一天&#xff0c;我们写了关于如何在localStorage中保存图像和文件的文章&#xff0c;它是关于我们今天可用的实用主义。 然而&#xff0c;localStorage有一些性能影响 - 我们将在稍后的博客中讨论这个问题 - 并且未来期望的方法是使用IndexedD…

Gitlab 项目上传

一&#xff0c;登陆gitab&#xff0c;新建reject Repository name: 仓库名称 Description(可选): 仓库描述介绍 Public, Private : 仓库权限&#xff08;公开共享&#xff0c;私有或指定合作者&#xff09; Initialize this repository with a README: 添加一个README.md gitig…

Java Servlet的前100个问题

1&#xff09;是“ servlets”目录还是“ servlet”目录&#xff1f; 回答&#xff1a; 对于Java Web Server&#xff1a; 在文件系统上&#xff0c;它是“ servlet” c&#xff1a;\ JavaWebServer1.1 \ servlets \ DateServlet.class 在URL路径中&#xff0c;它是“ servl…

stm32f103r6最小系统原理图_超强PCB布线设计经验谈附原理图

在当今激烈竞争的电池供电市场中&#xff0c;由于成本指标限制&#xff0c;设计人员常常使用双面板。尽管多层板(4层、6层及8层)方案在尺寸、噪声和性能方面具有明显 优势&#xff0c;成本压力却促使工程师们重新考虑其布线策略&#xff0c;采用双面板。在本文中&#xff0c;我…

[UE4GamePlay架构(九)GameInstance(转)

GameInstance这个类可以跨关卡存在&#xff0c;它不会因为切换关卡或者切换游戏模式而被销毁。然而&#xff0c;GameMode和PlayController就会再切换关卡或者游戏模式时被引擎销毁重置&#xff0c;这样他们里面的状态就不能被保存。比如&#xff0c;你想再下一个关卡中知道上一…

php+原生代码+赋值,js重新赋值原生的方法

js的原生方法被覆盖掉以后&#xff0c;如果你还没让原生方法又从新指向一个新的变量名&#xff0c;那就gg了。所以&#xff0c;关键就是怎么再获取到原生的方法。实现的原理呢就是创建一个新的window对象&#xff0c;然后从新的window对象里面获取原生的方法&#xff0c;来重新…

python基础知识 - Day4

String相关的方法&#xff1a; 1. 字符串格式化 format "hello, %s. %s enough for you" values (cloris,hot) print (format % values) 2. 字符串方法 - find() 可以在一个较长的字符串中查找子字符串。返回子串所在位置的最左端索引。如果没有找到&#xff0c;返回…

灵格斯怎么屏幕取词_电脑包尺寸怎么选?手提的好还是双肩的好?比较推荐哪款电脑包?...

在携带笔记本电脑的时候&#xff0c;一般都会用到电脑包&#xff0c;那么电脑包的尺寸该怎么选呢&#xff1f;为了能更好的装下电脑&#xff0c;电脑包的尺寸必须要比笔记本电脑的尺寸大一些&#xff0c;而不能刚刚好。笔记本的尺寸参数一般是指屏幕尺寸&#xff0c;而整个机身…

JSBridge实战

前言 H5 VS Native 一直是前端技术界争执不下的话题。react、vue等技术栈引领着纯H5开发&#xff0c;rn、week则倡导原生体验。但在项目实战中&#xff0c;经常会选择一个中立的方案&#xff1a;混合开发。大众称呼&#xff1a;Hybrid。 本人目前从事新闻类产品研发&#xff…

单元测试Java Hadoop作业

在我以前的文章中&#xff0c;我展示了如何设置一个完整的基于Maven的项目&#xff0c;以用Java创建Hadoop作业。 当然并没有完成&#xff0c;因为它缺少单元测试部分。 在本文中&#xff0c;我将展示如何将MapReduce单元测试添加到我之前开始的项目中。 对于单元测试&#xff…

【bzoj4008 hnoi2015】 亚瑟王

题目描述 小 K 不慎被 LL 邪教洗脑了&#xff0c;洗脑程度深到他甚至想要从亚瑟王邪教中脱坑。他决定&#xff0c;在脱坑之前&#xff0c;最后再来打一盘亚瑟王。既然是最后一战&#xff0c;就一定要打得漂亮。众所周知&#xff0c;亚瑟王是一个看脸的游戏&#xff0c;技能的发…

python 编码声明位置,python中的编码声明

python中的第一行&#xff0c;目的就是指出&#xff0c;你想要你的这个文件中的代码用什么可执行程序去运行它&#xff0c;就这么简单#!/usr/bin/python 相当于写死了 python 路径(是告诉OS执行这个py时&#xff0c;调用 /usr/bin 下的 python 解释器&#xff1b;)#!/usr/bin/e…

vue2.0中的:is和is的区别

此文首发于 https://lijing0906.github.io/ 最近&#xff0c;工作之余在翻阅vue.js的官方文档&#xff0c;在查看到动态组件和解析 DOM 模板时的注意事项的时候&#xff0c;讲到一个特殊的is特性&#xff0c;觉得很有意思&#xff0c;就来写一篇自己理解的总结。 现场 写栗子…

mysql复制模式第二部分-----双主模式

双主配置 我在配置主从服务器时&#xff0c;使用了两台服务器&#xff1a;10.19.34.126和10.19.34.91。 1、首先需要在这两台上搭建单独的mysql服务masterA和masterB。 2、配置数据库masterA&#xff0c;要对每一个数据库服务配置唯一标示&#xff0c;参数名为server-id&#x…

pde中微元分析法的主要思想_初中数学常用的思想方法丨所有题型的考试技巧最全整理,高分必备...

【导语】初中数学虽然是基础数学&#xff0c;但是这并不意味着就没有难度&#xff0c;特别是在素质教育下&#xff0c;从培养学生综合素质能力的角度出发&#xff0c;初中数学越来越重视数学思维的培养&#xff0c;因此在很多数学问题的设置上&#xff0c;都进行了相当难度的调…

解决IntelliJ IDEA控制台乱码问题[包含程序运行时的log4j日志以及tomcat日志乱码]...

一、控制台打印的程序运行时的log4j日志中包含中文乱码 在IDEA安装目录的bin目录下找到名为"idea.exe.vmoptions"的文件&#xff1a; 使用文本编译软件(Notepad等)打开此文件&#xff0c;在文件内容从末尾追加一行设置&#xff08;-Dfile.encodingUTF-8&#xff09;&…

如何在Spring 3.x中使用事件

创建松耦合应用程序的概念和技术很多&#xff0c;Event是其中之一。 事件可以消除代码中的许多依赖关系。 有时没有事件&#xff0c;很难实施SRP *。 Java中的Observable接口可以帮助我们实现事件&#xff08;通过Observer Pattern&#xff09;。 但是&#xff0c;等等&#x…

php识别地址,实现地址自动识别实例(PHP)

具体问题具体分析&#xff01;代码实现基于laravel完成。一个laravel完整的功能得具备这些&#xff1a;路由route&#xff0c;Model, View, Controller, 我这里用的有依赖注入服务容器等功能&#xff0c;当然&#xff0c;用到地址&#xff0c;你首先要有地址库。。。下面来看看…

kubernetes cpu限制参数说明

docker CPU限制参数 Option Description --cpus<value> Specify how much of the available CPU resources a container can use. For instance, if the host machine has two CPUs and you set --cpus"1.5", the container is guaranteed at most one and …

工业机器人用铸铁牌号_常用铸铁牌号

常用铸铁的牌号、组织与性能常用铸铁的牌号、组织与性能铸铁中的石墨形态、尺寸以及分布状况对性能影响很大。铸铁中石墨状况主要受铸铁的化学成分及工艺过程的影响。铸铁中石墨形态(片状或球状)在铸造后即形成&#xff1b;也可将白口铸铁通过退火&#xff0c;让其中部分或全部…