动态规划: 求一个一维整数数组的最大子序列和

代码如下:

#include "stdio.h"

int get_max_sub_array_sum(const int A[], int N) {
	int max, sum, i;
	max = 0;
	sum = 0;
	if (N <= 0) {
		return 0;
	}

	for (i = 0; i<N; i++) {
		sum += A[i];
		if (sum > max) {
			max = sum;
		}
		else if (sum < 0) {
			sum = 0;
		}
	}
	return max;
}




int main()
{
	int A[] = { -1, -2, 3, 0, 4, -1, 2, 5, 7, 9, -8 };
	int N = 11;
	int max = get_max_sub_array_sum(A, N);

	printf("%d", max);
	
    return 0;
}
原文地址:https://www.cnblogs.com/smallrookie/p/6445373.html