亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

最大子數組問題

2019-11-10 16:58:58
字體:
來源:轉載
供稿:網友

問題描述: 給定一個整數數組,找到一個具有最大和的子數組,返回其最大和。

樣例: 給出數組[?2,2,?3,4,?1,2,1,?5,3],符合要求的子數組為[4,?1,2,1],其最大和為6

分析: 解決這個問題至少有4種方法

算法1 窮舉法

我們窮舉出所有的子數組,然后從這些子數組中找出最大的

int MaxSubseqSum1(int List[], int N){ int ThisSum, MaxSum = 0; int i,j,k; for (i = 0; i < N; i++)//i是子數組的左端 { for (j = i; j < N; j++)//j是子數組的右端 { ThisSum = 0;//ThisSum是List[i]到List[j]的子數組的和 for (k = i; k <= j; k++) ThisSum += List[k]; if(ThisSum > MaxSum)//如果剛得到的這個子數組和更大 MaxSum = ThisSum;//則更新結果 } } return MaxSum;}

時間復雜度O(N3)

算法2 優化的窮舉法

第一個算法中,最里面的循環,對于固定的i,當j增大了1,k循環需要從新從i加到j。事實上,第j部就加上List[j]即可。

int MaxSubseqSum2(int List[], int N){ int ThisSum, MaxSum = 0; int i,j; for (i = 0; i < N; i++) { ThisSum = 0; for (j = i; j < N; j++) { ThisSum += List[j]; // 對于相同的i,不同的j,只要在j-1次循環的基礎上累加1項即可 if(ThisSum > MaxSum) MaxSum = ThisSum; } } return MaxSum;}

時間復雜度O(N2)

算法3:分而治之

步驟: 1. 將序列分為左右兩個子數組 2. 遞歸地求兩個子數組的最大和S左S右 3. 從中間的點分別找出左右,跨過分界線的最大子數組的和S中 4. Smax=maxS左,S右,S中

/*算法3:分而治之*/inx Max3(int A, int B, int C){ return A > B ? A > C ? A : C : B > C ? B : C;}int DivideAndConquer(int List[], int left, int right){ int MaxLeftSum, MaxRightSum; int MaxLeftBorderSum, MaxRightBorderSum; int LeftBorderSum, RightBorderSum; int center,i; if(left == right) //遞歸終止條件,子數組只有一個數字 if(List[left] > 0) return List[left]; else return 0; //分的過程 center = (left+right)/2; MaxLeftSum = DivideAndConquer(List,left,center) MaxRightSum = DivideAndConquer(List,center+1,right) //跨界求最大子數組和 MaxLeftBorderSum = 0; LeftBorderSum = 0; for (i = center; i >= left; i--) { LeftBorderSum += List[i]; if(LeftBorderSum > MaxLeftBorderSum) MaxLeftBorderSum = LeftBorderSum; }//左邊掃描結束 MaxRightBorderSum = 0; RightBorderSum = 0; for (i = center+1; i < right; i++) { RightBorderSum += List[]; if(RightBorderSum > MaxRightBorderSum) MaxRightBorderSum = RightBorderSum; }//右邊掃描結束 //治的過程 return Max3(MaxLeftSum,MaxRightSum,MaxLeftBorderSum+MaxRightBorderSum);}int MaxSubseqSum3(int List[], int N){ return DivideAndConquer(List, 0, N-1);}

算法4:在線處理(動態規劃)

核心思想:一旦發現子數組的和為負數,棄置,重新一個新數組。

int MaxSubseqSum4(int List[], int N){ int ThisSum, MaxSum; int int; ThisSum = MaxSum = 0; for (i = 0; i < N; i++) { ThisSum += List[i]; if(ThisSum > MaxSum) MaxSum = ThisSum; else if(ThisSum < 0) ThisSum = 0; } return MaxSum;}

python

#動態規劃def MaxSubseqSum(A): max_ending_here = max_so_far = A[0] for x in A[1:]: max_ending_here = max(x, max_ending_here + x) max_so_far = max(max_so_far, max_ending_here) return max_so_far
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品香蕉在线观看视频一| 亚洲人精选亚洲人成在线| 日韩欧美精品网址| 亚洲最大成人免费视频| 久久九九热免费视频| 欧美中文字幕在线观看| 在线播放精品一区二区三区| 欧美丰满少妇xxxxx| 国产欧美日韩丝袜精品一区| 久久色免费在线视频| 久久精品视频亚洲| 日韩欧美在线视频日韩欧美在线视频| 精品国产91乱高清在线观看| 久久久亚洲成人| 中文字幕日韩av综合精品| 亚洲欧美日韩综合| 国产成人精品一区二区在线| 国产一区二区动漫| 欧美理论电影在线观看| 精品国产老师黑色丝袜高跟鞋| 欧美激情一区二区三区成人| 国产在线播放不卡| 亚洲区bt下载| 中国日韩欧美久久久久久久久| 91国内精品久久| 国产日韩中文字幕在线| 在线观看中文字幕亚洲| 国产精品揄拍一区二区| 国产精品h片在线播放| 成人信息集中地欧美| 中文字幕在线视频日韩| 狠狠躁天天躁日日躁欧美| 精品国内亚洲在观看18黄| 国产精品成人观看视频国产奇米| 国产精品久久久久久久午夜| 精品中文字幕久久久久久| 国产精品自产拍在线观看| 欧美肥婆姓交大片| 午夜精品在线观看| 国产深夜精品福利| 久久久久久97| 一区二区亚洲精品国产| 91久久精品国产91久久| 亚洲色图第一页| 日韩黄色av网站| 992tv成人免费影院| 精品无人区太爽高潮在线播放| 日韩欧美国产视频| 日韩一区二区在线视频| 欧美激情视频在线免费观看 欧美视频免费一| 岛国视频午夜一区免费在线观看| 欧美性猛交xxxx偷拍洗澡| 超在线视频97| 91精品国产777在线观看| 欧美日韩一区二区免费在线观看| 国产亚洲视频在线观看| 国产精品电影在线观看| 亚洲第一页在线| 97婷婷大伊香蕉精品视频| 狠狠色噜噜狠狠狠狠97| 国产成人avxxxxx在线看| 2019亚洲男人天堂| 欧美成人免费一级人片100| 日本a级片电影一区二区| 日韩成人在线播放| 久久精品成人一区二区三区| 日韩av在线免播放器| 亚洲18私人小影院| 久久777国产线看观看精品| 亚洲欧洲国产伦综合| 欧美激情欧美激情在线五月| 91高清视频免费观看| 国产福利精品av综合导导航| 欧美性猛交xxxx乱大交极品| 欧美精品亚州精品| 久久久久久久999精品视频| 亚洲片国产一区一级在线观看| 久久精品视频播放| 欧美激情按摩在线| 97视频免费在线观看| 欧美激情精品久久久久久| 51久久精品夜色国产麻豆| 在线看欧美日韩| 亚洲精品资源在线| 亚洲综合精品伊人久久| 亚洲国产高清福利视频| 91精品国产91久久久久久久久| 亚洲日本欧美中文幕| 日韩视频第一页| 欧美巨猛xxxx猛交黑人97人| 91国产中文字幕| 中文字幕视频在线免费欧美日韩综合在线看| 91po在线观看91精品国产性色| 国产精品白嫩初高中害羞小美女| 黑人巨大精品欧美一区二区| 亚洲第一网中文字幕| 尤物99国产成人精品视频| 亚洲欧洲一区二区三区在线观看| 茄子视频成人在线| 国产一区二区欧美日韩| 日韩在线观看免费网站| 人人澡人人澡人人看欧美| 九色精品免费永久在线| 久久国产精彩视频| 色噜噜狠狠狠综合曰曰曰| 亚洲性生活视频在线观看| 色樱桃影院亚洲精品影院| 在线成人激情黄色| 欧美精品久久久久久久免费观看| 国产自产女人91一区在线观看| 一区二区在线免费视频| 国产午夜精品全部视频播放| 日韩一区二区在线视频| 国外成人在线视频| 欧美大尺度激情区在线播放| 国外成人免费在线播放| 国产欧美在线播放| 国产成人精品在线| 亚洲精品久久久久久久久| 国产精品老女人视频| 精品亚洲va在线va天堂资源站| 欧美成人一区二区三区电影| 欧美放荡办公室videos4k| 日本视频久久久| 日韩视频在线免费| 精品人伦一区二区三区蜜桃免费| 色婷婷久久一区二区| 欧美精品在线免费| 亚洲欧美精品伊人久久| 在线观看亚洲区| 91在线观看欧美日韩| zzijzzij亚洲日本成熟少妇| 国产精品69精品一区二区三区| 成人亚洲欧美一区二区三区| 97热在线精品视频在线观看| 国产亚洲精品美女| 中文字幕亚洲综合| 国产精品日韩欧美大师| 欧美最猛性xxxxx亚洲精品| 26uuu日韩精品一区二区| 日韩av在线天堂网| 在线日韩精品视频| 国产日韩综合一区二区性色av| 色偷偷av一区二区三区乱| 日韩在线观看免费高清| 日韩在线视频免费观看| 国产91对白在线播放| 日韩亚洲欧美中文在线| 欧美高跟鞋交xxxxhd| 俺去亚洲欧洲欧美日韩| 亚洲天堂影视av| 色先锋资源久久综合5566| 另类视频在线观看| 国内成人精品视频| 日韩欧美黄色动漫| 91亚洲精华国产精华| 国产成人综合久久| 国产精品入口夜色视频大尺度| 欧美日韩一区二区三区在线免费观看| 一区二区三区 在线观看视| 国产精品视频1区| 一区二区三区视频观看| 欧美福利在线观看| 日韩午夜在线视频|