最大连续子数组和
2015-03-19 18:30
218 查看
#include<iostream>
#include <time.h>
using namespace std;
int MaxSubArray(int* a, int n);
int main()
{
int data[] = {0,-1,2,4,7,-8,11,15};
int sum = MaxSubArray(data, 8);
cout<<"最大值为:"<<sum<<endl;
while(true)
;
return 0;
}
int MaxSubArray(int data[], int length)
{
if(data == NULL || length <= 0) // 数据输入合法性检验
return false;
int sum = 0;
int curSum = 0;
for(int i = 0; i < length; ++i)
{
if(curSum <= 0)
curSum = data[i];
else
curSum += data[i];
if(curSum > sum)
sum = curSum;
}
return sum;
}
#include <time.h>
using namespace std;
int MaxSubArray(int* a, int n);
int main()
{
int data[] = {0,-1,2,4,7,-8,11,15};
int sum = MaxSubArray(data, 8);
cout<<"最大值为:"<<sum<<endl;
while(true)
;
return 0;
}
int MaxSubArray(int data[], int length)
{
if(data == NULL || length <= 0) // 数据输入合法性检验
return false;
int sum = 0;
int curSum = 0;
for(int i = 0; i < length; ++i)
{
if(curSum <= 0)
curSum = data[i];
else
curSum += data[i];
if(curSum > sum)
sum = curSum;
}
return sum;
}
相关文章推荐
- 分治法求连续子数组的最大和
- 剑指offer 最大连续子数组之和
- 最大连续子数组
- LeetCode-152:Maximum Product Subarray (乘积最大连续子数组) -- medium
- 连续子数组最大和或最大子段和的求解算法及其正确性
- 最大连续子数组和。
- 最大连续子序列算法(数组的连续子数组最大和(首尾不相连))
- 连续子数组的最大和
- (二十三)剑指offer之连续子数组的最大和
- 连续子数组的最大和
- 编程之法:面试和算法心得(最大连续子数组和)
- 连续子数组的最大和
- 求连续子数组的最大乘积
- 求数组中最大连续子数组
- 最大连续子数组
- 《github一天一道算法题》:分治法求数组最大连续子序列和
- 连续子数组的最大和
- leetcode 最大连续子数组的和
- 分治策略-求最大连续子数组之和
- 求最大连续子数组的和