题目链接:
思路:
利用 map 和 set 的数据结构去解决问题,map里面存放 出现的所有的可能的结果,而 set 里面存放最终的答案 ------ 保证答案唯一
遍历 字符串,查找 map 中是否已经包含 对应的 子串,如果已经出现了,则 往 set 里面存放,如果没有出现,则添加到 map 中
代码:
javascript
/**
* @param {string} s
* @return {string[]}
*/
var findRepeatedDnaSequences = function (s) {
let map = new Map()
let set = new Set()
for (let i = 0; i < s.length - 9; i++) {
let key = s.substring(i, i + 10)
if (map.has(key)) {
set.add(key)
}
else {
map.set(key, 0)
}
}
return Array.from(set);
};