JavaScript_11.정수 내림차순으로 배치하기

hams·2023년 3월 15일
0

algorithm

목록 보기
11/62

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


나의 코드

function solution(n) {
 return Array.from(n.toString()).sort((a,b) => b-a).reduce(
  (acc, cur) => acc + cur) * 1
}

만약 n이 321이라고 가정한다면

    1. toString(): n이 들어오면 문자형으로 만든다
      결과 "321"
    1. Array.from(): 문자를 얕게 복사해 새로운Array 객체를 만든다
      결과 ["3", "2", "1"]
    1. sort를 써서 내림차순으로 정렬한다
      결과 ["1", "2", "3"]
    1. reduce를 써서 각 인덱스의 값을 누산한 값을 출력
      결과 "123"
    1. 암시적 형변환을 통해 숫자형으로 변환
      결과 123

다른 사람의 코드

function solution(n) {
  const newN = n + "";
  const newArr = newN
    .split("")
    .sort()
    .reverse()
    .join("");

  return +newArr;
}

0개의 댓글