ऑब्जेक्ट गुणों के आधार पर सरणी प्रविष्टियों की पहचान करना
ऑब्जेक्ट्स की एक सरणी पर विचार करें, प्रत्येक में एक "आईडी" संपत्ति होती है। वेरिएबल "$v" में संग्रहीत एक विशिष्ट "आईडी" मान से संबंधित प्रविष्टि का पता लगाने के लिए, हम कई तरीकों का पता लगाते हैं:
1। पुनरावृत्तीय खोज
इसमें सरणी के माध्यम से क्रमिक रूप से पुनरावृत्ति करना शामिल है, प्रत्येक ऑब्जेक्ट की "आईडी" संपत्ति की वांछित मान "$v" से तुलना करना।
$item = null; foreach($array as $struct) { if ($v == $struct->ID) { $item = $struct; break; } }
यह विधि एक बार की खोजों के लिए उपयुक्त है, लेकिन बड़े डेटासेट के लिए अक्षम हो सकती है।
2. हैशमैप दृष्टिकोण
वैकल्पिक रूप से, हम किसी अन्य सहयोगी सरणी का उपयोग करके हैशमैप का निर्माण कर सकते हैं।
$HashMap = []; foreach ($array as $struct) { $HashMap[$struct->ID] = $struct; } $item = $HashMap[$v];
यह दृष्टिकोण कुंजी के रूप में "आईडी" मान का उपयोग करके वांछित प्रविष्टि तक सीधी पहुंच सक्षम बनाता है, लेकिन इसके लिए अतिरिक्त मेमोरी ओवरहेड की आवश्यकता होती है।
इसलिए, दृष्टिकोण का चुनाव खोज कार्यों की आवृत्ति और आकार पर निर्भर करता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3