6월 16일 알고리즘

이정민·2022년 6월 15일
0

알고리즘

목록 보기
19/23

출처: https://programmers.co.kr/learn/courses/30/lessons/12933

문제 설명

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

제한 조건
n은 1이상 8000000000 이하인 자연수입니다.

입출력
nreturn
118372873211

나의 풀이

function solution(n) {
   const arr= String(n).split("").sort((a, b) => b - a)
   return Number(arr.join(""))
}

내림차순 .sort((a,b)=>b-a) 가 자꾸 헷갈린다..
오름차순 .sort ((a, b) { return a - b });
그냥 sort()를 사용하게 되면 String기준이라 90과 100이 있다면 90이 더 큰 수로 나오게된다.

다른 풀이

function solution(n) {
   const arr= String(n).split("").sort().reverse()
   return Number(arr.join(""))
}

sort()를 하고 reverse()를 하면 결국 .sort((a,b)=>b-a)와 같기 때문에 같은 풀이라고 볼 수 있다.

0개의 댓글