본문 바로가기

코딩테스트

[프로그래머스] level1. 문자열 내림차순으로 배치하기(javascript)

반응형

문제

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

의식의 흐름

sort를 통해 정렬해주면 되겠다.

문자열 정렬은 단순 sort((a,b)=>a-b) 같은 형태로 하면 안된다는걸 알게됨.

단순 뒤집어 주기만 하면 reverse 쓰는게 더 좋아보인다.

function solution(s) {

    return s.split('').sort().reverse().join('');
}    

다른 이들의 정답

function solution(s) {
    return s.split("").sort((a,b) => a<b ? 1:-1).join("")
}

 

숫자랑 다르게 위와 같이 명확하게 return 1 과 -1해주어 오름차순 내림차순을 정할 수 있었다.

 

참조
문자열 => 배열 : split()
배열 => 문자열 : .join()

반응형