动态规划中最长公共子序列.pptVIP

  • 230
  • 0
  • 约2.28千字
  • 约 17页
  • 2016-04-06 发布于安徽
  • 举报
动态规划中最长公共子序列.ppt

3.3 最长公共子序列 定义:一个给定序列的子序列是在该序列中删去若干元素后得到的序列。 找出{A, B, C, D}的所有子序列 思考:有n个元素的序列至多有多少个子序列? 公共子序列 定义:如果序列Z既是序列X的子序列又是序列Y的子序列,则称Z是X和Y的公共子序列。 找出X = (A, B, C, D, A, B), Y = (B, D, C, A, B, A)的所有公共子序列。 最长公共子序列 找出X和Y的最长公共子序列。 对于任意给定的X和Y,它们的最长公共子序列唯一吗?举例说明。 最长公共子序列的结构 设序列X={x1, x2, …, xm}, Y={y1, y2, …, yn}, Z={z1, z2, …, zk},则 (1) 若xm = yn, 则Zk - 1 是Xm – 1和Yn – 1的最长公共子序列; 如:X = {…, C}, Y = {…, C}, 则Z = {…, C} 最长公共子序列的结构(续) (2)若xm ≠ yn, 且zk ≠ xm,则Z是Xm – 1和Y的最长公共子序列; 如:X = {… , C}, Y = {…, B}, zk ≠C, 则在计算最长公共子序列时,可不考虑X的最后一个元素C 最长公共子序列的结构(续) (3)若xm ≠ yn, 且zk ≠ yn,则Z是X和Yn– 1的最长公共子序列 如:X = {… , C}, Y = {…,

文档评论(0)

1亿VIP精品文档

相关文档