求子陣列的最大和

2021-07-05 01:40:46 字數 880 閱讀 9568



輸入乙個整形陣列,陣列裡有正數也有負數。陣列中連續的乙個或多個整數組成乙個

子陣列,每個子陣列都有乙個和。求所有子陣列的和的最大值。要求時間複雜度為 o(n)。

例如輸入的陣列為 1, -2, 3, 10, -4, 7, 2, -5,和最大的子陣列為 3, 10, -4, 7, 2,因此輸出為該子

陣列的和 18。

#include "stdafx.h"

#include

using namespace std;

/// find the greatest sum of all sub-arrays

// return value: if the input is valid, return true, otherwise return false

/bool findgreatestsumofsubarray

(int *pdata, // an array

unsigned int nlength, // the length of array

int &ngreatestsum // the greatest sum of all sub-arrays

)else

else

}else

else

}if (preresult>max1)

}ngreatestsum = max1;

return true;}}

int main(void)

;int gretest;

findgreatestsumofsubarray(a, sizeof(a) / sizeof(int), gretest);

cout << gretest;

return 0;

}

求子陣列最大和

題目 輸入乙個整形陣列,陣列裡有正數也有負數。陣列中連續的乙個或多個整數組成乙個子陣列,每個子陣列都有乙個和。求所有子陣列的和的最大值。要求時間複雜度為o n 例如輸入的陣列為1,2,3,10,4,7,2,5,和最大的子陣列為3,10,4,7,2,因此輸出為該子陣列的和18。因為是o n 的複雜度,...

求子陣列的最大和

題目 輸入乙個整形陣列,陣列裡有正數也有負數。陣列中連續的乙個或多個整數組成乙個子陣列,每個子陣列都有乙個和。求所有子陣列的和的最大值。要求時間複雜度為o n 本題最初為2005年浙江大學計算機系的考研題的最後一道程式設計題,在2006年裡包括google在內的很多知名公司都把本題當作面試題。由於本...

求子陣列的最大和

陣列 一 題目 感謝 提供的題目 求子陣列的最大和 輸入乙個整形陣列,陣列裡有正數也有負數。陣列中連續的乙個或多個整數組成乙個子陣列,每個子陣列都有乙個和。求所有子陣列的和的最大值。要求時間複雜度為o n 例如輸入的陣列為1,2,3,10,4,7,2,5,和最大的子陣列為3,10,4,7,2,因此輸...