ปัญหา
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้จำนวนบวก n เราสามารถดำเนินการได้มากสุดหนึ่งครั้ง -
เลือกดัชนีของตัวเลขในตัวเลข ลบตัวเลขนี้ที่ดัชนีนั้นแล้วใส่กลับเข้าไปที่ตำแหน่งอื่นหรือตำแหน่งเดียวกันในตัวเลข เพื่อหาจำนวนที่น้อยที่สุดที่เราหาได้
ฟังก์ชันของเราควรส่งคืนตัวเลขที่น้อยที่สุดนี้
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const num = 354166; const smallestShuffle = (num) => { const arr = String(num).split(''); const { ind } = arr.reduce((acc, val, index) => { let { value, ind } = acc; if(value > val){ value = val; ind = index; }; return { value, ind }; }, { value: Infinity, ind: -1 }); const [item] = arr.splice(ind, 1); arr.unshift(item); return Number(arr.join('')); }; console.log(smallestShuffle(num));
ผลลัพธ์
ต่อไปนี้เป็นเอาต์พุตคอนโซล -
135466