首先将要看到如何运用动态编程查找两个 DNA 序列的最长公共子序列(longest common subsequence,LCS)。发现了新的基因序列的生物学家通常想知道该基因序列与其他哪个序列最相似。查找 LCS 是计算两个序列相似程度的一种方法:LCS 越长,两个序列越相似。
子序列中的字符与子字符串中的字符不同,它们不需要是连续的。例如,ACE 是 ABCDE 的子序列,但不是它的子字符串。请看下面两个 DNA 序列:
S1 = DEGCCCTAGCGDE
S2 = DEGCGCAATGDE
这两个序列的 LCS 是 GCCAG。(请注意,这仅是一个 LCS,而不是唯一的 LCS,因为可能存在其他长度相同的公共子序列。这种最优化问题和其他最优化问题的解可能不止一个。)
LCS 算法
首先,考虑如何递归地计算 LCS。令:
C1 是 S1 最右侧的字符
C2 是 S2 最右侧的字符
S1 是 S1 中 “切掉” C1 的部分
S2 是 S2 中 “切掉” C2 的部分
有三个递归子问题:
L1 = LCS(S1, S2)
L2 = LCS(S1, S2)
L3 = LCS(S1, S2)
结果表明(而且很容易使人相信)原始问题的解就是下面三个子序列中最长的一个:
L1
L2
如果 C1 等于 C2,则为 L3 后端加上 C1 ,如果 C1 不等于 C2,则为 L3。
(基线条件
您可能关注的文档
最近下载
- 基于Glauert法的风力机叶片设计设计说明书论文.docx VIP
- 12J7-3 内装修-吊顶-常用建筑图集.docx VIP
- 《紫苏生产技术规程》DB41T 3072-2025(河南标准).pdf VIP
- 党员组织生活会批评与自我批评发言材料.docx VIP
- 马工程《教育学原理》第十章 复习笔记.pdf VIP
- 柱锤冲扩法柱锤冲扩桩法.pptx VIP
- 浙江国企招聘-2026宁波海创集团有限公司第3批次公开招聘工作模拟试卷(浓缩300题)推荐.docx VIP
- 2025年最新主题教育应知应会知识竞赛题含参考答案.docx VIP
- (2026春新版)苏教版二年级数学下册全册教学设计.pdf VIP
- 浙江国企招聘-2026宁波海创集团有限公司第3批次公开招聘工作考前自测高频考点模拟试题(浓缩300题.docx VIP
原创力文档

文档评论(0)