1143 最長公共子串行

2022-05-16 12:47:01 字數 594 閱讀 1932

一.  題目描述:

二.  動態規劃解法

例如:s1="abcde"  s2= "ace",求兩個字串的公共子串行,答案是「ace」

1. s t

2. 子問題劃分

(1) 如果s的最後一位等於t的最後一位,則最大子串行就是和的最大子串行+1

(2) 如果s的最後一位不等於t的最後一位,那麼最大子串行就是

① 和 最大子串行

② 和 最大子串行

以上兩個自序列的最大值

3. 邊界

只剩下和

,如果相等就返回

1,不等就返回

04. 使用乙個**來儲存dp的結果

如果 s[i] == t[j] 則

dp[i][j] = dp[i-1][j-1] + 1

否則dp[i][j] = max(dp[i][j-1],dp[i-1][j])ac

ea11(「a」與」ac」)的最大子串行

1(「a」與」ace」)的最大子串行

b1(「ab」與」a」)的最大子串行11

c122

d122

e123

最後返回結果dp[i][j] = 3; 

1143 最長公共子串行

給定兩個字串 text1 和 text2,返回這兩個字串的最長公共子串行。乙個字串的 子串行 是指這樣乙個新的字串 它是由原字串在不改變字元的相對順序的情況下刪除某些字元 也可以不刪除任何字元 後組成的新字串。例如,ace 是 abcde 的子串行,但 aec 不是 abcde 的子串行。兩個字串的...

1143 最長公共子串行

給定兩個字串 text1 和 text2,返回這兩個字串的最長公共子串行。乙個字串的 子串行 是指這樣乙個新的字串 它是由原字串在不改變字元的相對順序的情況下刪除某些字元 也可以不刪除任何字元 後組成的新字串。例如,ace 是 abcde 的子串行,但 aec 不是 abcde 的子串行。兩個字串的...

1143 最長公共子串行

給定兩個字串 text1 和 text2,返回這兩個字串的最長公共子串行的長度。乙個字串的 子串行 是指這樣乙個新的字串 它是由原字串在不改變字元的相對順序的情況下刪除某些字元 也可以不刪除任何字元 後組成的新字串。例如,ace 是 abcde 的子串行,但 aec 不是 abcde 的子串行。兩個...