हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो पहले और एकमात्र तर्क के रूप में शाब्दिकों की एक सरणी लेता है।
हमारे फ़ंक्शन को प्रत्येक क्रमागत सम अनुक्रमणिका को एक-दूसरे से अदला-बदली करनी चाहिए, और प्रत्येक क्रमागत विषम अनुक्रमणिका को एक-दूसरे से अदला-बदली करनी चाहिए।
फ़ंक्शन को इन स्वैपिंग को जगह में करना चाहिए।
उदाहरण के लिए -
यदि इनपुट ऐरे है -
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 ]