본문 바로가기

알고리즘/리트코드

187. Repeated DNA Sequences

완전 탐색을 선택했다. 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