Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

문자열 메서드를 사용하지 않고 JavaScript에서 배열을 사용하지 않고 정수 정렬


숫자를 받는 JavaScript 함수를 작성해야 합니다. 함수는 숫자의 자릿수를 재배열하여 구성할 수 있는 가장 작은 숫자를 반환해야 합니다.

예를 들어 -

입력 번호가 -

인 경우
const num = 614532;

그러면 출력은 다음과 같아야 합니다. -

const output = 123456;

유일한 조건은 String 메서드나 배열을 사용하여 데이터를 저장할 수 없다는 것입니다.

예시

이에 대한 코드는 -

const num = 614532;
const sortDigits = num => {
   const getDigit = e => Math.floor(num / 10 ** e) % 10;
   const l = Math.ceil(Math.log10(num)) − 1;
   let e = l;
   while (e−−) {
      const left = getDigit(e + 1);
      const right = getDigit(e);
      if (left <= right){
         continue;
      };
      num += (right − left) * 9 * 10 ** e;
      e = l;
   };
   return num;
}
console.log(sortDigits(num));

출력

콘솔의 출력은 -

123456