젭알... sort 와 reverse를 이용하자..
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
걍 갑자기 버블정렬이 생각났따
function solution(n) {
const num = n.toString().split('').map((n) => {
return parseInt(n, 10);
}); // n이 1234 라면, [1,2,3,4]로
for (let i = 0; i < num.length - 1; i++) {
for (let j = 0; j < num.length - i; j++) {
if (num[j] <= num[j + 1]) {
let value = num[j];
num[j] = num[j+1];
num[j+1] = value;
}
}
}
return parseInt(num.join(''))
}
function solution(n) {
const newN = n + ""; //문자열로 만들기 //"2538"
const newArr = newN // "2538"
.split("") //['2', '5', '3', '8']
.sort(function(a,b){return a-b})
// ['2', '3', '5', '8']
.reverse()
.join("");
return +newArr;
}
주의 : sort함수에 sort()만 입력하면 문자열 숫자를 제대로 비교못할수도있으니 꼭 ()안에 function(a,b){return a-b}
써주자.