ROsalind 014 Finding a Shared Motif
背景:
在“Finding a Motif in DNA”中,我们在给定的基因串中搜索基序;但是,这个问题假设我们事先知道主题。在实践中, 生物学家通常不知道他们在寻找什么。相反,他们必须 同时搜索几个不同的基因组以识别相似区域 这可能表明不同生物或物种共有的基因。
最简单的相似区域是在从数据库中获取的遗传字符串集合中的每一个中发生的没有突变的基序;这样的主题 对应于所有字符串共享的子字符串。我们想搜索长共享子字符串, 因为较长的基元可能表示更大的共享功能。
https://rosalind.info/problems/lcsm/
问题:
字符串集合的公共子字符串是每个 集合的成员。我们说,如果不存在更长的公共子字符串,则公共子字符串是最长的公共子字符串。例如,“CG”是 “A CG TACGT”和“AACCGTATA”的共同子串,但不是尽可能长; 在这种情况下,“CGTA”是“A CGTA CGT”和“AACCGTATA”的最长公共子字符串。
给定k个长度不超过1kbp的字符串(FASTA),返回它们最长字符串。
例子:
Input:
>Rosalind_1 GATTACA >Rosalind_2 TAGACCA >Rosalind_3 ATACA
output:
AC
代码:
一如既往 暴力解法
from method import fasta
name_list,value_list = fasta('D:/pycharm/Rosalind/Data/rosalind_lcsm_1_dataset.txt')
index_num = 0
length = 10000000
for i in value_list:if len(i)<length:length = len(i)index_num = value_list.index(i)
seq_frag = value_list[index_num]
temp = []
for i in range(len(seq_frag)):for j in range(i+1,len(seq_frag)):temp.append(seq_frag[i:j])
temp=list(set(temp))
temp.append(seq_frag)
temp.sort(key=len,reverse=True)
for i in temp:tag = 0for j in value_list:if i in j:tag+=1if tag == len(value_list):print(i)break
ROsalind 014 Finding a Shared Motif相关推荐
- Rosalind Java| Finding a Shared Motif
Rosalind编程问题之寻找共有的motif. Finding a Shared Motif Problem A common substring of a collection of string ...
- 碱基序列的最长公共子串(Finding a Shared Motif)
碱基序列的最长公共子串(Finding a Shared Motif) 题目 A common substring of a collection of strings is a substring ...
- 【Rosalind】Finding a Protein Motif – 正则表达式的使用
Rosalind习题Finding a Protein Motif 先祝大家中秋和国庆双节快乐! 在这个日历我还在努力地学习代码(指只有晚上写了2h白天都在睡觉)zzzz 最近在做Rosalind上的 ...
- Rosalind Java|Finding a Spliced Motif
Rosalind编程问题之查找两个序列由内含子分隔的共有motif. Ordering Strings of Varying Length Lexicographically Problem: A s ...
- 数据警务_如何停止网上种族歧视警务
数据警务 重点 (Top highlight) "You don't need to get all worked up over this." "You're too ...
- rosalind练习题
1.统计各碱基的数量, 计算整条序列长度 seq = ''with open('./1.txt', "r") as f:for line in f:if line[0] != &q ...
- 生信刷题之ROSALIND——Part 4 (MPRT, MRNA, ORF)
目录 写在前面 1.Finding a Protein Motif Problem Sample Dataset Sample Output Code Output 2.Inferring mRNA ...
- IPC-共享内存 (七猫的藏经阁 )
一共有三种,常用的是两种:ACE里封装了SRV的和POSIX的,名字叫ACE_Shared_Memory_MM(POSIX)和ACE_Shared_Memory_SV,他们都是从ACE_Shared_ ...
- Rosalind Java|Matching Random Motifs
Rosalind编程问题之计算随机序列出现并匹配待比对序列的概率. 跟Rosalind Java|Introduction to Random Strings有异曲同工之妙. Matching Ran ...
最新文章
- druid+spring配置
- mysql 关于日期时间的字段类型
- NetScaler SDWAN 详细配置手册
- CV之IS:计算机视觉之图像分割(Image Segmentation)算法的挑战任务、算法演化、目标检测和图像分割(语义分割/实例分割/全景分割)的对比
- Python的操作符重载
- 你的 CRF 层的学习率可能不够大
- C++struct和class区别
- jQuery相当于对 javascript二次开发,所以基于 jQuery实现的各种插件直接调用即可...
- OS X 10.11 安装Cocoapods
- android 设备名称_如何更改您的Android TV的设备名称
- hibernate自定义校验器使用(字段在in范围之内)
- JavaScript 函数(方法)的封装技巧要领及其重要性
- 创建和分享你的Visual Studio color
- 【三维路径规划】基于matlab粒子群算法无人机三维路径规划【含Matlab源码 192期】
- [基本功]假设检验概念统计量一览
- IllustratorCS6-桌面排版与插画绘制-01-使用散点画笔绘制璀璨星云
- DevExpress之C#界面+MATLAB动态链接库联合编程
- pip安装使用镜像工具pqi
- edvac是商用计算机吗,计算机基础知识78228
- SQL 基础知识扫盲