(演算法)陣列中連續子陣列的最大和

2021-09-12 06:41:35 字數 703 閱讀 4456

方法一:可以從頭到尾遍歷,遍歷過程中,對以每個元素開頭的子陣列求連續最大和,最後從各個最大和中找出最大的。

方法二:使用動態規劃的方法,先以第乙個數為區域性最大和整體最大值,之後遍歷陣列,累加到區域性最大值上,若新加上的數比區域性最大值還要大,則把這個新數作為區域性最大值,直到遍歷結束;遍歷過程中,若區域性最大值大於整體最大值,則賦值給整體最大值。

/**

* 遍歷資料

* @param array 輸入陣列

* @return 輸出連續和的最大值

*/public int findgreatestsumofsubarray1(int array)

for(int i=0; imax)

}

} return max;

}/**

* 動態規劃

* @param array

* @return

*/public int findgreatestsumofsubarray(int array)

return res;

}public static void main(string args) ;

main5 test = new main5();

system.out.println(test.findgreatestsumofsubarray(array));

}

輸入:

陣列中連續子陣列的最大和

簡要解析 的連續子陣列最大值為40。從9到6的連續子陣列的和,為最大子陣列和 package com.zzh public class main int result maxarray array system.out.println 連續最大值為 result public static intm...

最大和連續子陣列

問題描述 乙個數值型陣列,其子陣列有多個,求其子陣列中最大的和值。所謂和值,是指數組所有元素相加的和。解法 1 掃瞄法,維護max變數,儲存最大和,其初始值為data 0 假設最大和子陣列的第一位下標為i,i從0到n 1,對於每個i值,從data i 開始,進行累加,每加乙個數,與max變數比較一次...

連續子陣列最大和

hz偶爾會拿些專業問題來忽悠那些非計算機專業的同學。今天測試組開完會後,他又發話了 在古老的一維模式識別中,常常需要計算連續子向量的最大和,當向量全為正數的時候,問題很好解決。但是,如果向量中包含負數,是否應該包含某個負數,並期望旁邊的正數會彌補它呢?例如 連續子向量的最大和為8 從第0個開始,到第...