हमें एक JavaScript फ़ंक्शन लिखना है जो इंटीजर्स के ऐरे को लेता है।
फ़ंक्शन को ऐरे को इस तरह सॉर्ट करना चाहिए कि सभी ऑड नंबर्स पहले आएं, फिर इवन नंबर्स।
ऑड या इवन नंबर्स का अपने भीतर क्रम अधिक महत्वपूर्ण नहीं है, लेकिन सभी ऑड नंबर्स किसी भी इवन नंबर से पहले आने चाहिए।
उदाहरण के लिए:
यदि इनपुट ऐरे है:
const arr = [0, 2, 4, 6, 8, 0, 1, 3, 5, 7, 9, 1];
तो सॉर्ट किया गया ऐरे होना चाहिए (यह कई समाधानों में से एक है जहां सभी ऑड्स इवन्स से पहले हैं):
const output = [ 1, 3, 5, 7, 9, 1, 0, 2, 4, 6, 8, 0 ];
उदाहरण
const arr = [0, 2, 4, 6, 8, 0, 1, 3, 5, 7, 9, 1]; const sortOddEven = (arr = []) => { let i = 0, j, temp; while (i < arr.length - 1) { j = i; while (!(arr[j] % 2) && arr[j + 1] % 2) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; if (!j) { break; }; j--; }; i++; }; }; sortOddEven(arr); console.log(arr);आउटपुट
कंसोल में आउटपुट होगा:
[ 1, 3, 5, 7, 9, 1, 0, 2, 4, 6, 8, 0 ]