首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设一个整形一维数组里有n(n>1)个整数,在这些整数中可以有正数也可以有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。设计一个在时间和空间两方面尽可能高效的算法,输出所有子数组的和的最大值。例如一维数组中的整数为1,—2,3,10,
设一个整形一维数组里有n(n>1)个整数,在这些整数中可以有正数也可以有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。设计一个在时间和空间两方面尽可能高效的算法,输出所有子数组的和的最大值。例如一维数组中的整数为1,—2,3,10,
admin
2017-04-28
35
问题
设一个整形一维数组里有n(n>1)个整数,在这些整数中可以有正数也可以有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。设计一个在时间和空间两方面尽可能高效的算法,输出所有子数组的和的最大值。例如一维数组中的整数为1,—2,3,10,—4,7,2,—5,则和最大的子数组为3,10,—4,7,2,该子数组的和为18。要求:
根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
选项
答案
算法实现如下: void FindGreatestSumOfSubArray(int a[],n) { int sum; //sum用来记录子数组的和 int max; //max用来记录最大子数组的和 int i; max=a[0]; //将max的值初始化为数组中的第一个元素的值 sum=0; //将sum的值初始化为0 for(i=0;i<n;i++) { sum+=a [i]; //计算子数组的和 if( sum>max) //如果当前计算的子数组的和比之前记录的最大子数组的和大的 话,则更新max的值 max=s um; if (sum<0) //如果当前计算的子数组的和小于0,则将sum置0 sum=0; } printf("%d\n",max); }
解析
转载请注明原文地址:https://kaotiyun.com/show/kWRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
【波兹南事件】北京大学2003年欧美近现代史真题;华中师范大学2015年世界史基础真题
在下列我国建国之后的外交活动中,能够体现“和而不同”思想的有()①亚非会议主张“求同存异”②提出“和平共处五项原则”③中日关系实现正常化④同第三世界国家建立友谊
1988年6月,苏联共产党第十九次代表会议的主题是()。
洋务派创办军事工业的方式是()。
与前两次工业革命相比,第三次科技革命在能源结构上的主要变化是()
以下不属于国民党控制金融的“四行”的是()。
《凡尔赛条约》中,战胜国以()方式处置德国的全部海外殖民地。
在周初分封中,分封同姓诸侯国、异姓诸侯国,也分封圣王之后,下面属于圣王之后的封国为()。
1543年发表解剖学专著《人体结构论》的是()。
1947年,刘邓大军千里跃进大别山,揭开了战略反攻的序幕。据此回答问题:中共中央将战略决战的方向首先指向的是()
随机试题
下列对眼压测量方法的描述,不正确的是
白芷和细辛功效的共同点
判别水平射流轴心弯曲性质的阿基米德数Ar,其物理意义是射流的()。
根据《安全生产法》的规定,生产经营单位的()必须具备与本单位所从事的生产经营活动相应的安全生产知识和管理能力。
正当防卫和紧急避险区别在于,紧急避险所损害的对象只能是不法侵害人,而正当防卫所侵害的是第三者。
根据以下材料回答下列问题。2018年第一季度我国水产品进出口192.67万吨,同比减少7.27%,增速较上年同期减少21.97个百分点;进出口总额77.15亿美元,同比增长10.84%。贸易顺差19.66亿美元,同比减少2.15亿美元。出口方面,201
元丰变法前,宋朝为了加强对中央司法机关的控制,在皇宫中设立()。
一棵二叉树第六层(根结点为第一层)的结点数最多为【】个。
将下面类TestClass中的函数fun()的对象成员n值修改为100的语句应该是()。classTcstClass{public:TestClass(intx){n=x;}voidSetNum(int
A、Toattractmorelisteners.B、Topopularizetheirculture.C、Todisplaytheirpersonality.D、Toaccentuatethebeat.D
最新回复
(
0
)