您的位置:首页 > 其它

一个数组中连续子数组的最大和

2016-08-27 18:07 344 查看
一个数组中连续子数组的最大和






//连续子数组的最大和
//{ 1, -2, 3, 10, -4, 7, 2, -5 };//最大子数组18
#include<iostream>
using namespace std;
bool g_InValid = false;
int FindGreatSumOfSubArray(int* arr, int size)
{
if (arr == NULL || size <= 0)
g_InValid = true;
g_InValid = false;
int curSum = 0;
int greatSum = 0x80000000;
for (int i = 0; i < size; ++i)
{
if (curSum <= 0)
{
curSum = arr[i];
}
else
curSum += arr[i];
if (curSum>greatSum)
greatSum = curSum;
}
return greatSum;
}
void Test1()
{
int arr[] = { 1, -2, 3, 10, -4, 7, 2, -5 };//最大子数组18
if (!g_InValid)
{
cout << FindGreatSumOfSubArray(arr, sizeof(arr) / sizeof(arr[0])) << endl;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数组 一个 连续
相关文章推荐