Longest Common Subsequence
Longest Common Subsequence
1.what is LCS
- example1:
- example2:
先从e开始:
先从c开始:
最长的是cdji
- example3:
先从b开始:
先从a开始:
2.LCS using Recursion
算法思路:
如果都是0返回0
如果相同都往下移动一个
如果不同第一个序列移动下一个或者第二个序列移动到下一个
3.LCS using Memoisation(save time)
4.LCS using Dynamic Programing
example1:
这里多出来一行和一列0是为了初始化开始
一开始的1是因为对角线+1,之后的2是因为对角线+1.
所以相同的字母就是b和d。
example2:
tips:
先看这一行什么与他相等,直接前面的都是用临边俩比大求的,到了与他相等的字母直接加1
最后找谁是最大序列的时候,我们从最大的数往前推,箭头指向来源,最后的答案就是被+1产生的格子