先举两个例子吧:
模式“AC”是主串“Alpha Cat”和主串“ACCEPT”的公共子序列。
模式“abc”是主串“abcde”和主串“adbec”的公共子序列。
由此可见公共子序列的定义就是说,在主串中有序的存在模式的全部字符,可以是不连续的,然后我百度了一下,关于公共子序列的概念可以参考子数列的概念。
子数列
在数学中,某个数列的子序列是从最初序列通过去除某些元素但不破坏余下元素的相对位置(在前或在后)而形成的新数列。
概念介绍
在数学中,某个数列的子数列是从最初数列通过去除某些元素(有限或无限项)但不破坏余下元素的相对位置(在前或在后)而形成的新数列。
正式的说,假设X是集合而(ak)k∈K是X中的数列,这里的K={1,2,3,...,n},如果(ak)是有限数列,且K=
,当(ak)是无限数列。则(ak)的子数列是形如 的数列,这里的(nr)是在索引集合K中严格递增数列。
代码如下:
java: