Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การสลับคู่ดัชนีคู่และคี่ภายใน JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของลิเทอรัลเป็นอาร์กิวเมนต์แรกและอาร์กิวเมนต์เดียว

ฟังก์ชันของเราควรสลับดัชนีคู่ที่ต่อเนื่องกัน และสลับดัชนีคี่ที่ต่อเนื่องกัน

ฟังก์ชันควรทำการสลับเหล่านี้เข้าที่

ตัวอย่างเช่น −

หากอาร์เรย์อินพุตเป็น −

const arr = [0, 1, 2, 3, 4, 5, 6, 7, 8];

จากนั้นอาร์เรย์ควรกลายเป็น −

const output = [2, 3, 0, 1, 6, 7, 4, 5, 8];

เพราะ 0 กับ 2 ถูกสลับ 1 กับ 3 ถูกสลับ 4 กับ 6 ถูกสลับ 5 กับ 7 ถูกสลับ และสุดท้าย 8 ยังคงเหมือนเดิม

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const arr = [0, 1, 2, 3, 4, 5, 6, 7, 8];
const swapPairs = (arr = []) => {
   const swap = (array, ind1, ind2) => {
      const temp = array[ind1];
      arr[ind1] = arr[ind2];
      arr[ind2] = temp;
   };
   let i = 0;
   for(; i + 3 < arr.length; i += 4){
      swap(arr, i, i + 2);
      swap(arr, i + 1, i + 3);
   };
   if (i + 2 < arr.length){
      swap(arr, i, i + 2);
   };
};
swapPairs(arr);
console.log(arr);

ผลลัพธ์

ต่อไปนี้เป็นเอาต์พุตคอนโซล -

[
   2, 3, 0, 1, 6,
   7, 4, 5, 8
]