当前位置: 首页 > wzjs >正文

预付做网站定金如何地推

预付做网站定金如何,地推,特种作业操作证查询电子版,app开发公司需要投资多少问题描述 小U是一位古生物学家,正在研究不同物种之间的血缘关系。为了分析两种古生物的血缘远近,她需要比较它们的DNA序列。DNA由四种核苷酸A、C、G、T组成,并且可能通过三种方式发生变异:添加一个核苷酸、删除一个核苷酸或替换一…

问题描述

小U是一位古生物学家,正在研究不同物种之间的血缘关系。为了分析两种古生物的血缘远近,她需要比较它们的DNA序列。DNA由四种核苷酸A、C、G、T组成,并且可能通过三种方式发生变异:添加一个核苷酸、删除一个核苷酸或替换一个核苷酸。小U认为两条DNA序列之间的最小变异次数可以反映它们之间的血缘关系:变异次数越少,血缘关系越近。

你的任务是编写一个算法,帮助小U计算两条DNA序列之间所需的最小变异次数。

  • dna1: 第一条DNA序列。
  • dna2: 第二条DNA序列。

代码

def solution(dna1, dna2):

    # Please write your code here

    n = len(dna1)

    m = len(dna2)

    if n * m == 0:

        return n + m

    f = [[0] * (m + 1) for _ in range(n + 1)]

    for i in range(n + 1):

        f[i][0] = i

    for j in range(m + 1):

        f[0][j] = j

    for i in range(1, n + 1):

        for j in range(1, m + 1):

            f[i][j] = min(f[i - 1][j] + 1, f[i][j - 1] + 1, f[i - 1][j - 1] + (dna1[i - 1] != dna2[j - 1]))

    return f[n][m]

if __name__ == "__main__":

    #  You can add more test cases here

    print(solution("AGT", "AGCT") == 1)

    print(solution("", "ACGT") == 4)

    print(solution("GCTAGCAT", "ACGT") == 5)

http://www.dtcms.com/wzjs/346809.html

相关文章:

  • 帮人做网站一个多少钱网站seo搜索引擎的原理是什么
  • 网站的域名是什么免费一键生成个人网站
  • 那个公司做网站搜索引擎优化论文
  • 100个免费b站推广网站公众号推广渠道
  • 上海网站建设公司网站长平台百度
  • 怎么查询公司企业邮箱慈溪seo排名
  • 青岛市建设监督管理局网站郑州seo
  • 武汉市网站网络建站流程
  • ubuntu服务器上wordpress南昌seo排名外包
  • 开一个设计工作室需要什么网站关键词优化技巧
  • 如何用wordpress设计成网上商城河源市seo点击排名软件价格
  • 北京创意网站设计今日疫情最新数据
  • 为什么做彩票网站会被提示危险3分钟搞定网站seo优化外链建设
  • 重型机械网站开发模版创意营销
  • 网站建设公司前十名网络广告是什么
  • 做研学的网站优秀品牌策划方案
  • 网页制作基础知识答案网站建设公司seo关键词
  • wordpress文章分类seo优化广告
  • 盗版小说网站怎么做国外电商平台有哪些
  • 网站流量通道今天最新新闻报道
  • 免费搭建网站的平台南京百度推广开户
  • 蚂蚁中国网站建设河南百度推广电话
  • 京东联盟需要自己做网站吗深圳龙岗区优化防控措施
  • 网站建设服务公司有哪些体彩足球竞彩比赛结果韩国比分
  • 做什么网站赚钱最快个人网页在线制作
  • 新吴区住房和城乡建设部网站上海关键词排名提升
  • 网站群建设的意义短视频拍摄剪辑培训班
  • 提供网站推广公司电话网络推广方式方法
  • 微商建立网站网络广告的类型有哪些
  • wordpress登录机制天津百度优化