[Algorithms] reverse Strings several times

[Algorithms] reverse Strings several times

JavaScript : slice(), splice(), ...slicedArr.reverse()

·

1 min read

0단계 : 문자열 여러 번 뒤집기

문자열 my_string과 이차원 정수 배열 queries가 매개변수로 주어집니다. queries의 원소는 [s, e] 형태로, my_string의 인덱스 s부터 인덱스 e까지를 뒤집으라는 의미입니다. my_stringqueries의 명령을 순서대로 처리한 후의 문자열을 return 하는 solution 함수를 작성해 주세요.


Example

my_stringqueriesresult
"rermgorpsam"[[2, 3], [0, 7], [5, 9], [6, 10]]"programmers"

Solution


function solution(my_string, queries) {
    let arr = my_string.split(''); //배열로 변환
    queries.forEach(([a,b]) => {
        // a부터 b까지 지정 범위 배열로 자르기 
        const slicedArr = arr.slice(a,b+1);
        // 자른 배열을 뒤집어서 넣기 (치환) 
        arr.splice(a, slicedArr.length , ...slicedArr.reverse())
   })
    return arr.join('');
}
  • ...slicedArr.reverse()로 넣어야 함

cf. https://school.programmers.co.kr/learn/courses/30/lessons/181913