最大子集和

2021-07-24 09:53:16 字數 682 閱讀 2214

選出乙個陣列裡的乙個連續子集,使這個子集相加的和為所有子集中最大。

舉例:給定乙個陣列為[-2, 1, -3, 4, -1, 2, 1, -5, 4], 輸出結果為:[4, -1, 2, 1],他的元素相加和為6為所有子集中最大。函式原型:retcode maxsubarray(int inputarr, int inputlen, int outsubarr, int outlen)

void maxsubarray(int inputarr, int &inputlen, int outputarr, int &outlen)

// 如果是第乙個子串 或 已知最大子串的和小於當前子串的和,則替換

if ((max_begin == -1 && max_end == -1) || max_sum < sum) }}

outlen = max_end - max_begin + 1;

for (int i = 0; i < outlen; i++)

}int main()

maxsubarray(inputarr, inputlen, outarr, outlen);

for (int i = 0; i < outlen; i++)

cin.get();

cin.get();

return

0;}

leetcode 最大子集和

問題 求乙個給定陣列中的最大連續元素和。以ai代表陣列中截止下標為i的子陣列最大連續元素和 i 0,1,2.求ai可以考慮將ai分為該截止元素 之前元素的和與該截止元素兩部分,求最 public class maxsubarray return maxsubarray public static v...

集合最大子集演算法 折衷演算法

我們直接來看乙個問題。給定乙個由n個整數組成的集合,其中n 40,每乙個整數都小於或等於 我們用例子來說明。例題1 輸入集合為 n 6,s 42 也就是從集合的6個元素中選擇適當的元素組成乙個子集,使得子集所有元素的和最大,並且該和小於或等於42。答案 該子集為,它的元素和為34 5 2 41,就是...

求二維陣列的最大子集和

小組成員 李夏蕾 楊世超 這次的題目是接著上次的一維陣列進行的進一步的引申,雖然考慮了很多的方法,但還是覺得窮舉法是最保險的一種,下面是我們的思路 我們採用的是自己輸入行數和列數,然後輸入資料進行測試。同時申請了兩個陣列用來存放子集的長度和寬度,好用來輸出。主要的就是for迴圈了,首先是最外層的,先...