是指按順序從兩個字串中獲取的公共包含的元素集合。
abcdfd
annbmmf
abf就是
把乙個大問題規劃成好幾個同樣的子問題,然後分別求解。
/* 輸出字串 */
public
static
void
getlcstring(string x,string y,int c)else
if(c[i-1][j] >= c[i][j-1])else
if(c[i-1][j] < c[i][j-1])}}
public
static
void
main(string args)
}
000
0000
0000
0111
1011
1122
2011
2222
2011
2233
3012
2233
3012
2334
4012
2344
4012
2344
4012
2344
4012
2344
4012
2344
4012
2344
4012
2344
4012
2344
4012
2344
5 [[i@1db9742
element: r i: 15 j: 7
element: a i: 6 j: 6
element: b i: 4 j: 5
element: c i: 3 j: 3
element: b i: 2 j: 1
-----end---
最長公共子串行 最長公共子串
1 最長公共子串行 採用動態規劃的思想,用乙個陣列dp i j 記錄a字串中i 1位置到b字串中j 1位置的最長公共子串行,若a i 1 b j 1 那麼dp i j dp i 1 j 1 1,若不相同,那麼dp i j 就是dp i 1 j 和dp i j 1 中的較大者。class lcs el...
最長公共子串行 最長公共子串
1.區別 找兩個字串的最長公共子串,這個子串要求在原字串中是連續的。而最長公共子串行則並不要求連續。2 最長公共子串 其實這是乙個序貫決策問題,可以用動態規劃來求解。我們採用乙個二維矩陣來記錄中間的結果。這個二維矩陣怎麼構造呢?直接舉個例子吧 bab 和 caba 當然我們現在一眼就可以看出來最長公...
最長公共子串 最長公共子串行
子串要求連續 子串行不要求連續 之前的做法是dp求子序列 include include include using namespace std const int inf 0x3f3f3f3f const int mod 1000000007 string s1,s2 int dp 1010 10...