1.问题:
-
定义
设 X 和 Z 是两个序列,其中
X=<x1,x2,…,xm>
Z=<z1,z2,…,zk>
如果存在 X 的元素构成的按下标严格递增序列<x1,x2,…,xm>=,使那么 Z 是 X 的子序列,Z 含有的元素个数,称为子序列的长度。
-
定义
设 X 和 Y 是两个序列,如果 Z 既是 X 的子序列,也是 Y 的子序列,则称
Z 是 X 和 Y 的公共子序列。
实例:
X=<A,B,C,B,D,A,B>
Y=<B,D,C,A,B,A>
<B,C,B,A>
<B,C,A,B> -
问题
最长公共子序列问题(Longest Common Subsequence,LCS),给定序列
,求 X 和 Y 的最长公共子序列
2.解析:
如果 Zk是 Xi和 Yj的最长公共子序列
(1ÿ