题目:
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
相关推荐
AI机器学习算法19 小时前
机器学习基础知识2301_8092047021 小时前
bootstrap怎么实现鼠标悬停切换图片预览功能小徐学编程-zZ1 天前
量产测试数据QQ8057806511 天前
django基于机器学习的电商评论情感分析系统设计实现X journey1 天前
机器学习进阶(13):支持向量机SVMwx09091 天前
stata实现机器学习的环境配置洛水水1 天前
【力扣100题】30.二叉树的直径gihigo19981 天前
Bezier曲线曲面生成算法平行侠1 天前
024多精度大整数 - 突破硬件精度限制的任意精度运算nuowenyadelunwen1 天前
CS 61A Lab 2 笔记:短路求值、高阶函数与 Lambda 表达式