MIT6.006动态规划Problem Session 3: 蛋白质解析问题的算法分析

本文介绍了MIT6.006课程中解决蛋白质解析问题的动态规划算法,通过SRTBOT方法分析如何寻找DNA链S的最佳分割,以最大化属于标记列表P的子串数量。定义子问题X(i)为从S的第i个字符到末尾的子串最多匹配P的数量,使用递归关系和拓扑顺序求解,并分析了算法的时间复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ander教授有一个实验室,这个实验室用来处理DNA,一条DNA链大致就是一串"ACTG.."等

 所以,现在我们有一条DNA链S,我们就把它看成一长串字符串“S=ACTGACTG....”to be the input string

List P (一个待匹配的标记列表P,里面有很多markers)---每个marker都是一个小于等于k的核苷酸序列--即P相当于我们拿到的一个卡片,上面写着几串标准答案——现在我们的任务是把S分割成一片一片的散的串,来核对这些串里有多少个是跟标准答案匹配的。

(S和P都是事先给定的(inputs))

 我们要对这个字符串S做分割--Division D=(d1,d2....dm),分割结果是m条子串

//我们定义分割D的值等于:S做分割后的那些子串(d1-dm)属于标记列表P中的子串数量

value of D=# strands (that are in P)

目标:

     Max Value of D-----怎样对S做分割,才能使割出来的子串集合里面属于P的数量最多?


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值