inblog logo
|
👨🏻‍💻DriedPollack's Blog
    💡Coding Test💻HTML / CSS / JavaScript

    [programmers] 문자열 곱하기 - JavaScript

    문자열 my_string을 k번 반복한 문자열을 반환하는 solution 함수를 작성하는 문제입니다. 이중 for문을 사용한 코드를 repeat() 함수를 이용하여 최적화할 수 있었습니다.
    Jan 02, 2024
    [programmers] 문자열 곱하기 - JavaScript

    문제 설명

    문자열 my_string과 정수 k가 주어질 때, my_string을 k번 반복한 문자열을 return 하는 solution 함수를 작성해 주세요.

    제한사항

    • 1 ≤ my_string의 길이 ≤ 100
    • my_string은 영소문자로만 이루어져 있습니다.
    • 1 ≤ k ≤ 100

    입출력 예

    my_string
    k
    result
    "string"
    3
    "stringstringstring"
    "love"
    10
    "lovelovelovelovelovelovelovelovelovelove"

    입출력 예 설명

    입출력 예 #1
    • 예제 1번의 my_string은 "string"이고 이를 3번 반복한 문자열은 "stringstringstring"이므로 이를 return 합니다.
    입출력 예 #2
    • 예제 2번의 my_string은 "love"이고 이를 10번 반복한 문자열은 "lovelovelovelovelovelovelovelovelovelove"이므로 이를 return 합니다.

    solution.js

    function solution(my_string, k) { var answer=[]; for(var i=0; i<k; i++){ for(j=0; j<my_string.length; j++){ answer.push(my_string[j]); } } return answer.join(""); }
    처음 해당 문제를 접했을 때 이중for문을 통해 전체 배열을 순회하는 방식을 사용했다. 하지만 이 방법이 퍼포먼스가 떨어진다고 느겼다.

    solution.js

    function solution(my_string, k) { return my_string.repeat(k) }
    해당 코드를 repeat() 함수를 통해 1줄로 줄일 수 있었다.
     

    핵심 키워드

    • repeat() 함수는 문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열을 반환하는 함수다.
     

    결론!

    해당 문제를 풀면서 퍼포먼스의 부족함을 느꼈고, repeat()함수를 이용해 문제를 최적화하는 법을 이해할 수 있었다.
     
    Share article

    👨🏻‍💻DriedPollack's Blog

    RSS·Powered by Inblog