हमें एक सरणी फ़ंक्शन लिखना है, मान लीजिए findMiddle, जो सरणी के length गुण को एक्सेस किए बिना और किसी भी प्रकार के अंतर्निहित लूप का उपयोग किए बिना सरणी का सबसे मध्य तत्व लौटाता है। यदि सरणी में विषम संख्या में तत्व हैं, तो हम एक मध्य तत्व लौटाते हैं, या यदि सरणी में सम संख्या में तत्व हैं, तो हम दो मध्य तत्वों की सरणी लौटाते हैं।
जैसा कि आप पहले ही अनुमान लगा चुके हैं, हम इन तत्वों को खोजने के लिए पुनरावृत्ति का उपयोग करेंगे। पुनरावर्ती फ़ंक्शन का कोड होगा:
उदाहरण
const arr = [1, 2, 3, 4, 5, 6, 7];
const array = [1, 2, 3, 4, 5, 6, 7, 8];
const findMiddle = (arr, ind = 0) => {
if (arr[ind]) {
return findMiddle(arr, ++ind);
}
return ind % 2 !== 0 ? [arr[(ind - 1) / 2]] : [arr[(ind / 2) - 1], arr[ind / 2]];
};
console.log(findMiddle(arr));
console.log(findMiddle(array));
आउटपुट
कंसोल में आउटपुट होगा:
[ 4 ] [ 4, 5 ]