문제
음수가 아닌 정수를 아규먼트로 받아 정수 내 숫자를 내림차순으로 정렬할 것.
문제 주소: www.codewars.com/kata/5467e4d82edf8bbf40000155/train/javascript
Codewars: Achieve mastery through challenge
Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential.
www.codewars.com
내 풀이
function descendingOrder(n){
let numbersToString = n.toString();
let stringNumbers = numbersToString.split('');
if (n >= 0) {
stringNumbers.sort(function(a, b){
return b-a;
});
return parseInt(stringNumbers.join(''));
}
}
우수 답안
function descendingOrder(n) {
return parseInt(n.toString().split('').sort().reverse().join(''));
}
후기 및 새롭게 배운 것
이번 문제의 핵심은 아규먼트로 들어오는 숫자를 문자열로 치환하고 정렬한 다음 다시 숫자열로 치환하는 것인 듯 했다. 풀이 방법은 동일하지만 나는 8줄의 코드를 작성했고, 우수 답안에서는 이를 한 줄에서 처리했다.
지난 번에 한 번 써봤던 sort
메소드가 나와서 다시 복습해볼 수 있었다.
자바스크립트 sort() 메소드 사용 방법 정리
자바스크립트의 sort() 메소드는 특정 배열을 정렬하고, 정렬된 배열을 리턴합니다. 기본 정렬은 오름차순이며, 요소를 문자열로 전환한 다음 UTF-16 코드 단위 값을 따라 이를 비교합니다. 배열 정
oneroomtable.tistory.com
'개발 > TIL;' 카테고리의 다른 글
[코드 워즈] 6. Vowel Count (0) | 2020.12.21 |
---|---|
[코드 워즈] 4. Stop gninnipS My sdroW! (0) | 2020.12.18 |
[코드 워즈] 3. Create Phone Number (0) | 2020.12.18 |