設(shè)A=< x1,x2,··· ,xn >是n個(gè)不等的整數(shù)構(gòu)成的序列,A的一個(gè)單調(diào)遞增子序列<
現(xiàn)在,我們仔細(xì)考慮計(jì)算F[t]時(shí)的情況。假設(shè)有兩個(gè)元素A[x]且A[y]滿足一下情況.
此時(shí),選擇A[x]和選擇A[y]都可以得到同樣的F[t]值,那么,在最長(zhǎng)上升子序列的這個(gè)位置中,應(yīng)該選擇A[x]還是A[y]
利用D[],我們可以得到另外一種計(jì)算最長(zhǎng)上升子序列長(zhǎng)度的方法。設(shè)當(dāng)前已經(jīng)求出的最長(zhǎng)
歸納基礎(chǔ): 當(dāng)t = 1時(shí),len = 1,D[1] = A[1]命題顯然成立。
歸納假設(shè):如果當(dāng)t = j時(shí)歸納命題成立,則我們現(xiàn)在來(lái)處理A[j + 1]。
根據(jù)上面的兩種情況的分析,我們可以得出以下結(jié)論,當(dāng)t = j歸納命題成立時(shí),t = j+1命題
也成立。由上面的分析可以推出:對(duì)于1 ≤ t ≤ n,當(dāng)我們處理完A[t]時(shí),len是A[1],A[2],··· ,A[t]最
聯(lián)系客服