728x90
문제 설명
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
제한 사항
- str은 길이 1 이상인 문자열입니다.
입출력 예
s | return |
"Zbcdefg" | "gfedcbZ" |
작성한 코드
function solution(s) {
return s.split('').sort().reverse().join('');
}
문제 설명은 저렇지만 어차피 sort() 메소드 자체가 아스키 코드를 기준으로 정렬합니다.
매개변수 s를 배열로 나눠주고 정렬한 뒤, 문자열을 내림차순으로 정렬해주고 문자열을 합쳐주면 됩니다.
처음에 reverse()만 썼을땐 정확성에서 모두 통과가 되지 않아 구글링 하던 도중 sort()를 써야한다는 것을 알게 되었습니다.
우선 정렬해준 뒤 배열을 역순으로 바꿔주면 내림차순으로 정렬이 됩니다.
728x90
'ALGORITHM > PROGRAMMERS' 카테고리의 다른 글
[프로그래머스] 1차 비밀지도 | javascript (0) | 2021.07.10 |
---|---|
[프로그래머스] 하샤드 수 | javascript (0) | 2021.07.10 |
[프로그래머스] 문자열 내 p와 y의 개수 | javascript (0) | 2021.07.10 |
[프로그래머스] 자연수 뒤집어 배열로 만들기 | javascript (0) | 2021.07.10 |
[프로그래머스] 나누어 떨어지는 숫자 배열 | javascript (0) | 2021.07.09 |