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