프로그래머스 Lv.1 가장가까운글자

Kim Jason·2023년 4월 3일
0

알고리즘 노트

목록 보기
9/35
post-thumbnail

💁🏻 코드

function solution(s) {
    const hash={};

    return [...s].map((v,i)=>{
        let result = hash[v] === undefined ? -1 : i - hash[v];
        hash[v] = i;
        return result;
    });
}

입력값의 크기 제한은 다음과 같다.

  • 문자열 s의 길이 <= 10,000

이중 for문 사용까지는 무난하다고 생각했다.

map 함수 안에서 배열 메서드인 slice()와 lastIndexof()를 사용해서 풀이도 해봤지만 상대적으로 시간이 더 걸리는 테스트 케이스가 있었다.
시간복잡도를 생각해서 코드를 짜는 습관을 갖자 🔥

profile
성장지향형 프론트엔드 개발자

0개의 댓글