इस पोस्ट में, हम जावा से जुड़े हैशमैप और ट्रेमैप के बीच के अंतर को समझेंगे।
हैश मैप
-
यह जावा में एक हैश तालिका है।
-
यह 'मानचित्र' इंटरफ़ेस के कार्यान्वयन पर आधारित है।
-
यह 'मैप, 'क्लोनेबल' और 'सीरियलाइज़ करने योग्य' इंटरफेस को लागू करता है।
-
यह एकल नल कुंजी की अनुमति देता है।
-
यह कई अशक्त मानों की भी अनुमति देता है।
-
यह ट्रीमैप की तुलना में तेज़ है।
-
ऐसा इसलिए है क्योंकि यह 'प्राप्त' और 'पुट' जैसे संचालन के लिए निरंतर समय के प्रदर्शन, यानी ओ (1) प्रदान करता है।
-
यह चाबियों पर छँटाई नहीं करता है।
-
इसलिए यह हैश मैप में विषम तत्वों की अनुमति देता है।
-
यह तत्वों के क्रम को बनाए नहीं रखता है।
-
इसका उपयोग तब किया जा सकता है जब क्रमबद्ध क्रम में की-वैल्यू पेयर की आवश्यकता नहीं होती है।
-
यह कुंजियों की तुलना करने के लिए ऑब्जेक्ट क्लास की 'बराबर' पद्धति का उपयोग करता है।
-
मानचित्र वर्ग की 'बराबर' विधि इसे ओवरराइड करती है।
-
इसमें केवल 'कीसेट', 'गेट', 'पुट' जैसी बुनियादी विधियां शामिल हैं।
ट्रीमैप
-
यह जावा में प्रयुक्त एक वृक्ष संरचना है।
-
यह 'मानचित्र' इंटरफ़ेस के कार्यान्वयन पर आधारित है।
-
यह 'नेविगेबल मैप', 'क्लोनेबल' और 'सीरियलाइज़ेबल' इंटरफेस को लागू करता है।
-
यह नल कुंजियों की अनुमति नहीं देता है।
-
यह कई शून्य मानों की अनुमति देता है।
-
यह सजातीय मूल्यों को एक कुंजी के रूप में क्रमबद्ध करने की अनुमति देता है।
-
यह हैश मैप की तुलना में धीमा है क्योंकि यह ऐड (), रिमूव () और सम्मिलित () जैसे अधिकांश ऑपरेशनों के लिए ओ (लॉग (एन)) की जटिलता प्रदान करता है।
-
यह आंतरिक रूप से लाल-काले पेड़ का उपयोग करता है।
-
लाल काला पेड़ एक स्व-संतुलित बाइनरी सर्च ट्री है।
-
तुलना करने के लिए () विधि का उपयोग कुंजियों की तुलना करने के लिए किया जाता है।
-
इसमें कई कार्यात्मकताएं हैं जैसे कि टेलमैप (), फर्स्टकी (), लास्टकी (), पोलफर्स्टएंट्री (), पोललास्टएंट्री ()।
-
तत्वों को आरोही क्रम में क्रमबद्ध किया जाता है, जिसे प्राकृतिक क्रम भी कहा जाता है।
-
इसका उपयोग तब किया जाता है जब आवश्यकता क्रमबद्ध क्रम में की-वैल्यू पेयर होती है।