আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা প্রথম এবং একমাত্র আর্গুমেন্ট হিসাবে লিটারেলের একটি অ্যারে নেয়৷
আমাদের ফাংশন একে অপরের সাথে প্রতিটি ক্রমাগত জোড় সূচী অদলবদল করা উচিত, এবং একে অপরের সাথে প্রতিটি ক্রমাগত বিজোড় সূচক অদলবদল করা উচিত।
ফাংশন এই অদলবদল জায়গায় করা উচিত.
যেমন −
যদি ইনপুট অ্যারে −
হয়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 ]