题目:
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
相关推荐
XH华1 分钟前
初识C语言之二维数组(下)南宫生23 分钟前
力扣-图论-17【算法学习day.67】不想当程序猿_34 分钟前
【蓝桥杯每日一题】求和——前缀和落魄君子1 小时前
GA-BP分类-遗传算法(Genetic Algorithm)和反向传播算法(Backpropagation)菜鸡中的奋斗鸡→挣扎鸡1 小时前
滑动窗口 + 算法复习蓝天星空1 小时前
Python调用open ai接口Lenyiin1 小时前
第146场双周赛:统计符合条件长度为3的子数组数目、统计异或值为给定值的路径数目、判断网格图能否被切割成块、唯一中间众数子序列 Ⅰjasmine s1 小时前
Pandas郭wes代码1 小时前
Cmd命令大全(万字详细版)scan7241 小时前
LILAC采样算法