题目:
DNA序列 由一系列核苷酸组成,缩写为
'A','C','G'和'T'.。
- 例如,
"ACGAATTCCG"是一个 DNA序列 。在研究 DNA 时,识别 DNA 中的重复序列非常有用。
给定一个表示 DNA序列 的字符串
s,返回所有在 DNA 分子中出现不止一次的 长度为10的序列(子字符串)。你可以按 任意顺序 返回答案。来源:力扣(LeetCode)
链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
示例:
示例 1:
输入:s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT"
输出:["AAAAACCCCC","CCCCCAAAAA"]
示例 2:
输入:s = "AAAAAAAAAAAAA"
输出:["AAAAAAAAAA"]
解法:
使用滑动窗口记录每个子串出现的次数。
代码:
pythonclass Solution: def findRepeatedDnaSequences(self, s: str) -> List[str]: dic = defaultdict(int) result = [] if len(s) >= 10: for index in range(len(s) - 9): dic[s[index: index + 10]] += 1 result = [k for k, v in dic.items() if v > 1] return result
力扣:187. 重复的DNA序列(Python3)
恽劼恒2023-11-30 20:42
相关推荐
蒙奇D索大24 分钟前
【算法】递归的艺术:从本质思想到递归树,深入剖析算法的性能权衡王哈哈^_^34 分钟前
【数据集+完整源码】水稻病害数据集,yolov8水稻病害检测数据集 6715 张,目标检测水稻识别算法实战训推教程lskisme35 分钟前
springboot maven导入本地jar包light_in_hand1 小时前
内存区域划分——垃圾回收开心-开心急了1 小时前
pyside6实现win10自动切换主题mortimer1 小时前
一键实现人声伴奏分离:基于 `uv`, `FFmpeg` 和 `audio-separator` 的高效解决方案小安同学iter2 小时前
SQL50+Hot100系列(11.7)_dindong2 小时前
笔试强训:Week-4Sunhen_Qiletian2 小时前
Python 类继承详解:深度学习神经网络架构的构建艺术星释2 小时前
Rust 练习册 :Nucleotide Codons与生物信息学