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