[华为机试练习题]56.求子数组的最大和
来源:互联网 发布:解放台湾 知乎 编辑:程序博客网 时间:2024/04/30 01:24
题目
描述:
输入一个整形数组。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。
接口
Int GetSubArraySum(Int* pIntArray,Int nCount);
规格
要求时间复杂度为O(n)
举例
例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18
练习阶段:
初级
代码
/*---------------------------------------* 日期:2015-07-05* 作者:SJF0115* 题目:求子数组的最大和* 来源:华为机试练习题-----------------------------------------*/#include <iostream>#include <string.h>#include "oj.h"using namespace std;/*功能:输入:pIntArray:数组,nCout:数组长度输出:返回:返回最大值*/int GetSubArraySum(int* pIntArray, int nCount){ if(pIntArray == NULL || nCount <= 0){ return 0; }//for int sum = pIntArray[0]; int max = pIntArray[0]; for(int i = 1;i < nCount;++i){ if(sum < 0){ sum = 0; }//if sum += pIntArray[i]; if(max < sum){ max = sum; }//if }//for return max;}
0 0
- [华为机试练习题]56.求子数组的最大和
- 华为OJ 求子数组的最大和
- 【华为OJ平台练习题】求最大公共子串的个数和元素
- 求数组最大子数组的和
- 求子数组的最大和
- 面试---求子数组的最大和
- 求子数组的最大和
- 求子数组的最大和
- 求子数组的最大和
- 求子数组的最大和
- 求子数组的最大和
- 求子数组的最大和
- 求子数组的最大和
- 求子数组的最大和
- 2.求子数组的最大和
- 3.求子数组的最大和
- 求子数组的最大和
- 3、求子数组的最大和
- NPM 3 Beta为Windows用户带来利好消息
- Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds
- 第七章 图形程序设计
- 最全前端面试问题及答案总结
- 道理你都懂,为什么你还会痛苦
- [华为机试练习题]56.求子数组的最大和
- js lodash 'date' 'nunber' 'math' methods
- LeetCode #002 Add Two Numbers
- 黑马程序员——Java集合框架—整理笔记
- Python_Monkeyrunner
- 《java课程设计》之猜猜看游戏(三)
- UIButton和UISlider
- Linux系统用到命令积累
- wget的下载与安装使用