数组1--求一个数的最大子数组

Posted 琴弦0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组1--求一个数的最大子数组相关的知识,希望对你有一定的参考价值。

结对开发 我的队友是王春帆20132902博客园地址http://www.cnblogs.com/-beauTiFul/

/*
设计思路:
    输入数组 -3 4 2 -7 6 1
    a[0]=sz[0];-3
    a[1]=max(a[0]+sz[1],sz[1]);4
    a[2]=max(a[1]+sz[2],sz[2]);6
    a[3]=max(a[2]+sz[3],sz[3]);-1
    a[4]=max(a[3]+sz[4],sz[4]);6
    a[5]=max(a[4]+sz[5],sz[5]);7
    max(a[0],a[1]...a[n])
*/

#include<iostream>
#include <algorithm> 
#include<cstdio>
#include<vector>
using namespace std;

int main()
{
    int i, szgs, maxsum;
    int sz[100],a[100];//最大数组
    cout << "请输入数组元素个数:";
    cin >> szgs;
    cout << "请输入数组元素:";
    for (i = 0; i < szgs; i++)
    {
        cin>>sz[i];
    }
    a[0]=maxsum = sz[0];
    if (szgs>0)
    {
        for (i = 1; i < szgs; i++)
        {
            a[i] = max(a[i - 1] + sz[i], sz[i]);
            maxsum = max(maxsum, a[i]);
        }
    }
    cout << "最大子数组的和为:" << maxsum << endl;
}

 

以上是关于数组1--求一个数的最大子数组的主要内容,如果未能解决你的问题,请参考以下文章

求二维数组最大子数组

最大子阵列/连续数组的最大和

python 最大连续子数组的和

返回一个整数数组最大子数组的和

返回一个整数数组最大子数组的和

返回一个二维整数数组中最大子数组的和