완전 탐색을 선택했다. Set, Map은 이터러블이므로 Array.from 으로 배열로 바꿀 수 있다.
const findRepeatedDnaSequences = function(s) {
if (s.length < 10) return []
let set = new Set(), res = new Set()
let start = 0
for (let end = 9; end < s.length; end++) {
let substr = s.substring(start, end + 1)
if (set.has(substr)) res.add(substr)
else set.add(substr)
start++
}
return Array.from(res)
}
const findRepeatedDnaSequences = function (s) {
let set = new Set();
let result = new Set();
for (let i = 0; i <=s.length - 10; i++) {
let str = s.substring(i, i + 10)
set.has(str) ? result.add(str) : set.add(str)
}
return [...result]
};
'알고리즘 > 리트코드' 카테고리의 다른 글
46. Permutations (0) | 2022.04.06 |
---|---|
53. Maximum Subarray (0) | 2022.04.05 |
127. Word Ladder (0) | 2022.03.31 |
136. Single Number (0) | 2022.03.31 |
49. Group Anagrams (0) | 2022.03.28 |