보통사람

[7kyu] 정수 내림차순으로 반환 (Descending Order) 본문

Codewars/Javascript

[7kyu] 정수 내림차순으로 반환 (Descending Order)

pej4303 2019. 8. 2. 23:56
/**
 * <pre>
 * 정수 내림차순으로 반환 (Descending Order)
 * 
 * 당신의 임무는 음수가 아닌 정수를 인수로 취하고 그 자릿수를 내림차순으로 반환 할 수있는 함수를 만드는 것입니다. 
 * 본질적으로 숫자를 재정렬하여 가능한 가장 높은 숫자를 만듭니다.
 * 
 * Your task is to make a function that can take any non-negative integer as a argument and return 
 * it with its digits in descending order. 
 * Essentially, rearrange the digits to create the highest possible number.
 * </pre>
 *
 * @auther : pej
 * @date : 2019. 03. 30.
 * @param : {Number} 정수
 * @return : {Number} 정수
 * @example : descendingOrder(21445) ==> 54421
 *
 */
function descendingOrder(n){
    var tmp = String(n);
    var arr = []; 
    
    for (var i in tmp) {
        arr.push(tmp.charAt(i));
    }
    
    arr.sort(function(a, b){ return b-a; });
    
    return parseInt(arr.toString().replace(/,/g,""));
}

 

  • 방법2) - 다른 사람이 한 것

function descendingOrder(n){
    return parseInt(String(n).split("").sort().reverse().join(""));
}

 

  • 방법3) - 다른 사람이 한 것

function descendingOrder(n){
    return parseInt(String(n).split("").sort(function(a, b){ return b-a; }).join(""));
}