所有 DNA 由一系列縮寫爲 A,C,G 和 T 的核苷酸組成,例如:“ACGAATTCCG”。在研究 DNA 時,識別 DNA 中的重複序列有時會對研究非常有幫助。
編寫一個函數來查找 DNA 分子中所有出現超多一次的10個字母長的序列(子串)。
示例:
輸入: s = “AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT”
輸出: [“AAAAACCCCC”, “CCCCCAAAAA”]
dict遍歷:
class Solution:
def findRepeatedDnaSequences(self, s: str) -> List[str]:
res = {}
for i in range(len(s)-9):
res[s[i:i+10]] = res.get(s[i:i+10], 0)+1
return [k for k, v in res.items() if v>=2]