हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो पूर्णांकों की एक सरणी को एकमात्र तर्क के रूप में लेता है।
फ़ंक्शन को निम्न स्थितियों के आधार पर सरणी को क्रमबद्ध करना चाहिए -
-
सभी सम संख्याओं को बढ़ते क्रम में क्रमबद्ध किया जाता है
-
सभी विषम संख्याओं को घटते क्रम में क्रमबद्ध किया जाता है
-
सम और विषम संख्याओं की सापेक्ष स्थिति समान रहती है
उदाहरण के लिए -
यदि इनपुट ऐरे है -
const arr = [12, 17, 15, 24, 1, 6];
तब आउटपुट होना चाहिए -
const output = [6, 17, 15, 12, 1, 24];
उदाहरण
निम्नलिखित कोड है -
const arr = [12, 17, 15, 24, 1, 6]; const specialSort = (nums = []) => { const oddArr = [], evenArr = []; for (let i = 0; i < nums.length; i++){ if (nums[i] & 1) { oddArr.push(i); } else { evenArr.push(i); } } nums.sort((a, b) => a - b); let odd = oddArr.length - 1, even = 0; const res = []; for (let i = 0; i < nums.length; i++){ if (nums[i] & 1) { res[oddArr[odd--]] = nums[i]; } else { res[evenArr[even++]] = nums[i]; } } return res; }
आउटपुट
कंसोल आउटपुट निम्नलिखित है -
[ 6, 17, 15, 12, 1, 24 ]