การสับเปลี่ยนทางเลือก
อาร์เรย์ที่สับเปลี่ยนอีกทางหนึ่งใน JavaScript คืออาร์เรย์ของ Numbers ซึ่งจะมีการจัดทำดัชนีตัวเลข โดยที่จำนวนที่มากที่สุดจะตามด้วยองค์ประกอบที่เล็กที่สุด องค์ประกอบที่มากที่สุดเป็นอันดับสองจะตามด้วยองค์ประกอบที่เล็กที่สุดเป็นอันดับสอง เป็นต้น
ตัวอย่างเช่น หากอาร์เรย์อินพุตเป็น −
const arr = [11, 7, 9, 3, 5, 1, 13];
จากนั้นผลลัพธ์ควรเป็น &ลบ
const output = [13, 1, 11, 3, 9, 5, 7];
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const arr = [11, 7, 9, 3, 5, 1, 13];
const sorter = (a, b) => a - b;
const alternateShuffle = (arr) => {
const array = arr
.slice()
.sort(sorter);
array.sort((a, b) => a-b);
for(let start = 0; start < array.length; start += 2){
array.splice(start, 0, array.pop());
}
return array;
};
console.log(alternateShuffle(arr)); ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ในคอนโซล -
[ 13, 1, 11, 3, 9, 5, 7 ]