重排数字的最小值
给你一个整数 num 。重排 num 中的各位数字,使其值 最小化 且不含 任何 前导零。
返回不含前导零且值最小的重排数字。
注意,重排各位数字后,num 的符号不会改变。
/** * @param {number} num * @return {number} */ const smallestNumber = (num) => { if (num <= 0) { return -Math.abs(num).toString().split('').sort().reverse().join('') } const arr = num.toString().split('').sort() const lastZeroIndex = arr.lastIndexOf('0') if (lastZeroIndex === -1) { return Number(arr.join('')) } else { const zeroArr = new Array(lastZeroIndex + 1).fill(0) return Number(`${arr[lastZeroIndex + 1]}${zeroArr.join('')}${arr.slice(lastZeroIndex + 2).join('')}`) } };
以自己现在的努力程度,还没有资格和别人拼天赋