[JS] 카운트 다운

Yongmin Park·2024년 6월 3일
0

JS-Programmers

목록 보기
2/14

프로그래머스 문제 링크

문제 풀이 생각 회로

  1. start 부터 end 까지 1씩 감소하는 배열을 리턴하는 문제

  2. 두가지 생각이 들 수 있다.

    1. 순회를 하며 start 부터 end까지 하나씩 줄여가며 배열을 push한다.
    2. Array를 만들고 start로 채워 넣은 다음 map 을 돌며 하나씩 인덱스 만큼 차감해 준다.
  3. 필자는 두번째 방법을 활용해 해결하였다.

고민했던 내용

  1. 위의 1번과 2번중 시간복잡도를 생각해 보았다.
    • 1번의 경우 반복문을 한번만 돌면되는 것 같아 시간 복잡도가 적어보였다.
    • 2번의 경우 배열을 만들고 start_num 으로 채워넣는 것과 그 배열을 다시 순회하며 하나씩 차감해주는 것 때문에 2번이 더 많이 걸릴 것으로 예상됨.
    • 내부적으로 fill이 어떻게 동작하는 지 검색해 보아야 겠다.
    • 참고한 블로그
    • 내부적으로 보았을 때 주소값을 복사한다고 하는 것으로 미루어 보았을 때 순회하며 주소값을 이어주는 것으로 생각됨.

제출 코드

function solution(start, end_num) {
    return Array(start - end_num + 1).fill(start).map((v, i) => v - i)
}
profile
기록으로 기적을

0개의 댓글