首尾相連的二維陣列最大子陣列求和

2022-08-29 23:09:25 字數 816 閱讀 9899

題目:返回乙個二維整數陣列中最大子陣列的和。要求:輸入乙個二維整形陣列,陣列裡有正數也有負數。二維陣列首尾相接,象個一條首尾相接帶子一樣。

n陣列中連續的乙個或多個整數組成乙個子陣列,每個子陣列都有乙個和。求所有子陣列的和的最大值。要求時間複雜度為o(n)。

結對程式設計要求: 兩人結對完成程式設計任務。 一人主要負責程式分析,**程式設計。

一人負責**複審和**測試計畫。

結對開發過程:

這次的程式設計開發是基於上次的以為陣列,我和我的搭檔@快樂的小菜鳥開始了認真的討論,再結合課堂上的同學討論,如何能在二維陣列原有的基礎上,加上首尾相連這個條件,同時降低時間複雜度,這種方法的大概思想是:遍歷陣列裡面的每乙個數將第乙個數變為最後乙個數,具體演算法 a[i][j-1]=a[i][j],這樣又變成了乙個新的二維陣列,輸出每個陣列的最大子陣列和,然後比較每個輸出的和,找出最大的數:

具體**:

#include using namespace std;

int maxsubarray(int **a,int n,int m)

else

if(ans截圖:

團隊合作圖:

二維陣列最大子陣列的和首尾相連

include using namespace std define n 4 void maxhe int a,int s,int jmin,int jmax int sum a 0 b a 0 x 0,y 0 int j 1 while j xif b 0 b a j n if jx j else...

二維陣列最大值首尾相連

題目要求 返回乙個整數陣列中最大子陣列的和。輸入乙個整形陣列,陣列裡有正數也有負數。陣列中連續的乙個或多個整數組成乙個子陣列,每個子陣列都有乙個和。如果陣列a 0 a j 1 首尾相鄰,允許a i 1 a n 1 a 0 a j 1 之和最大。同時返回最大子陣列的位置。設計思路 陣列首尾相連,可在任...

首尾相連陣列的最大子陣列和

1.求0 n 1的最大子陣列和 m 1 2.求跨越 n 1和0的最大子陣列和,分別求從0開始的最大和m 21,從n 1開始的最大和m 22,分別記錄得到最大和的位置pi,pj,這裡分兩種情況考慮 a.pib.pi pj,則求0 n 1的最小子陣列和m 3,及0 n 1的和mx m max m 1,m...