본문 바로가기

■ 프로그래밍/프로그래머스

[자바스크립트/Lv1] 문자열 내림차순으로 배치하기

https://programmers.co.kr/learn/courses/30/lessons/12917

 

[문제]

더보기

문제 설명

문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.

 

제한 사항

  • str은 길이 1 이상인 문자열입니다.

입출력 예

s return
Zbcdefg gfedcbZ

 

[풀이]

2020.03.13

function solution(s) {
    var reverseS = s.split("").sort().reverse().join("");
    return reverseS;
}

- 1. split으로 문자 분할

- 2. sort로 순차적으로 정렬 하기

- 3. reverse로 분할 된 문자를 거꾸로 배치하기

- 4. join으로 분할 된 문자 다시 합치기

 

* console.log로 확인하면서 작업하기

function solution(s) {
    var splitS = s.split("")
    console.log(splitS);

    var sortS = splitS.sort();
    console.log(sortS);

    var reverseS = sortS.reverse();
    console.log(reverseS);

    var joinS = reverseS.join("");
    console.log(joinS);

    return joinS;
}

solution("Basxcvsd"); 

// output: 
// (8) ["B", "a", "s", "x", "c", "v", "s", "d"]
// (8) ["B", "a", "c", "d", "s", "s", "v", "x"], sort로 대문자-소문자 abcd-순으로 정렬된 것을 볼 수 있다
// (8) ["x", "v", "s", "s", "d", "c", "a", "B"]
// xvssdcaB