如何使用Visual Studio 2010编写一个C语言程序,本经验将手把手教大家如何通过VS2010编写一个简单的C语言小程序......
2023-03-16 416 C语言
题目描述为:给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
本文分析最大子序列和的情况并给出一次遍历的算法实现。
使用一次遍历算法:遍历数组,累加数组中元素,并判断累加后数值是否最大。所以,我们初始化定义max保存最大子序和,num保持累加数据。
初始化时设置数组中第一个元素为max初始值
遍历数组,并判断累加后数值是否大于max,并更新最大值
如果在遍历的过程中遇到负数怎么办?因为我们不知道后续是否还会出现正数,比如-1,2的序列,所以继续累加。
当累加后值为负数时,我们重新开始累加。
最后,我们给出完整算法如下所示;算法的关键就在于理解以及处理,当累加为负数时,重新进行累加。
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
相关文章
如何使用Visual Studio 2010编写一个C语言程序,本经验将手把手教大家如何通过VS2010编写一个简单的C语言小程序......
2023-03-16 416 C语言
怎样使用VC软件编译并运行C语言程序,ViualC 6.0是一款非常好的软件,它不仅可以运行C代码程序,还可以创建位图和PPT等工程文件,现在的全国计算机等级考试(二级C)指定的编译软件就是VC6.......
2023-03-16 178 C语言