📢 문제 설명
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
⛔ 제한 조건
n은 1이상 8000000000 이하인 자연수입니다.
function solution(n) {
let answer = 0;
const sortArray = Array.from(String(n)).sort((a, b) => b - a);
answer = parseInt(sortArray.join(""));
return answer;
}
📌
Array.from()
: 메서드는 유사 배열 객체(array-like object)나 반복 가능한 객체(iterable object)를 얕게 복사해 새로운Array 객체를 만듭니다.
📌
sort()
: 메서드는 배열의 요소를 적절한 위치에 정렬한 후 그 배열을 반환
📍 기본 정렬 순서는 유니코드 코드 포인트를 따릅니다.
📍 sort(a,b) 일 때 0보다 작은 경우 a 우선
📍 sort(a,b) 일 때 0을 리턴하는 경우 a,b를 서로 변경 X, 다른 요소를 정렬함
📍 sort(a,b) 일 때 0보다 큰 경우 b를 우선
📍 기본: 오름 차순 , => a - b
내림차순으로 정렬을 내림 차순으로 정렬하고 싶을 때는 b - a
📌
join()
: join() 메서드는 배열의 모든 요소를 연결해 하나의 문자열로 만듭니다.
📍 배열의 각 요소를 구분할 문자열을 지정합니다. 이 구분자는 필요한 경우 문자열로 변환됩니다. 생략하면 배열의 요소들이 쉼표로 구분됩니다. separator가 빈 문자열이면 모든 요소들이 사이에 아무 문자도 없이 연결됩니다.
📌
parseInt()
: 함수는 문자열 인자를 파싱하여 특정 진수(수의 진법 체계에서 기준이 되는 값)의 정수를 반환합니다.
function solution(n) {
return parseInt(String(n).split("").sort().reverse().join(""));
}
설명이 필요 없지...gg 리버스로 돌리면 한번에 다 돌아가는건데 아쉽다.
📌
reverse()
: 메서드는 배열의 순서를 반전합니다. 첫 번째 요소는 마지막 요소가 되며 마지막 요소는 첫 번째 요소가 됩니다.