第四章 分治法例題

2021-10-03 20:54:06 字數 732 閱讀 1045

給定由n個整數組成的序列(a1, a2, …, an),最大子段和問題要求該序列形如        

的最大值(1≤i≤j≤n),當序列中所有整數均為負整數時,其最大子段和為0。例如,序列(-20, 11, -4, 13, -5, -2)的

最大子段和為

① a1, …, an的最大子段和=a1, …,a      的最大子段和;

② a1, …, an的最大子段和=a     +1, …, an的最大子段和;

③ a1, …, an的最大子段和=

int maxsum(int a[ ], int left, int right)

else

s2=0; rights=0; //再求解s2

for (j=center+1; j<=right; j++)

sum=s1+s2; //計算情況③的最大子段和

if (sum

//合併,在sum、leftsum和rightsum中取較大者

if (sum

}return sum;

}

第四章 函式和遞迴例題

例題4 1 組合數 輸入非負整數m,n輸出組合數c n,m m n 20 分析 從普通思維出發先算n 再算m 再算 n m 最終我們會發現,20!以及超出整數所能表示的範圍。因此此題不宜使用這種方法。經分析,我們發現n 和m 或者 n m 有重疊的部分,可以約去。因此得到如下解法 includeus...

第四章 繼承

一 為什麼要繼承 在物件導向中我們將具有很多重複內容的類中的內容提取出來,寫成乙個單獨的類 其他類只需要繼承就能取得這些功能,同時可以在自己類中寫入獨特的自定義方法 二 繼承語法 inte ce circle nsobject 繼承是在介面中定義的 冒號後的類名是要整合的類,nsobject 是co...

第四章 物件

三個特性 身份 型別 值 每個物件都有唯一的身份來標識自己,使用內建函式id 得到。例子 usr bin env python coding utf 8 a 32 print a b a print id a id b 結果 d python27 python.exe e workp python ...