[프로그래머스] 정수 내림차순

Narcoker·2022년 8월 11일
0

코딩테스트

목록 보기
6/152
post-custom-banner

문제 설명

함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.

제한 조건

n은 1이상 8000000000 이하인 자연수입니다.

입출력 예

풀이

입력값을 문자열로 바꾸고 이를 배열화한 다음,
내림차순 정렬하고 join() 을 이용하여 쉼표를 공백화한 후 정수화해서 반환

function solution(n) {
    return Number((n+"").split('').sort((a,b)=>b-a).join(''));
}

다른사람 풀이

문자열을 정수화할때 Number() 아닌 *1 연산을 이용할 수 도 있다.

function solution(n) {
  return (n+"").split('').sort((a,b)=>b-a).join('')*1;
}

정수 연산을 이용한 풀이, 정수 연산이 더 빠르다.

function solution(n) {
    var nums =[];
    do{
        nums.push(n%10);
        n=Math.floor(n/10);
    } while(n>0)
    return nums.sort((a,b)=>b-a).join('')*1;
}
profile
열정, 끈기, 집념의 Frontend Developer
post-custom-banner

0개의 댓글