जावा में हाशप और ट्रीपप के बीच अंतर

लेखक: Laura McKinney
निर्माण की तारीख: 2 अप्रैल 2021
डेट अपडेट करें: 11 मई 2024
Anonim
जावा 8 स्ट्रीम | नक्शा () और फ्लैटमैप () उदाहरण | जावाटेकी
वीडियो: जावा 8 स्ट्रीम | नक्शा () और फ्लैटमैप () उदाहरण | जावाटेकी

विषय


HashMap और TreeMap मानचित्र कक्षाएं हैं और दोनों ही मानचित्र इंटरफ़ेस को लागू करते हैं। मानचित्र एक ऐसी वस्तु है जो कुंजी-मूल्य जोड़े को संग्रहीत करता है, जहां प्रत्येक कुंजी अद्वितीय होती है, लेकिन डुप्लिकेट मान हो सकते हैं। HashMap वर्ग डेटा संरचना के रूप में हैश तालिका का उपयोग करता है। ट्रीपैप लाल-काले पेड़ का उपयोग डेटा संरचना के रूप में करता है। हाशप और ट्रेमाप के बीच मुख्य अंतर यह है कि हैश मैप प्रविष्टि क्रम को संरक्षित नहीं करता है, जबकि, ट्री-मैप कर देता है।

तो आइए हम नीचे दिखाए गए तुलना चार्ट की सहायता से हैशपैप और ट्रीपैप के बीच के अंतर पर अपनी चर्चा शुरू करते हैं।

  1. तुलना चार्ट
  2. परिभाषा
  3. मुख्य अंतर
  4. निष्कर्ष

तुलना चार्ट

तुलना के लिए आधारहैश मैपट्री-मैप
बुनियादी HashMap सम्मिलन क्रम को बनाए नहीं रखता है।ट्रीपॉपर प्रविष्टि क्रम रखता है।
डेटा संरचनाHashMap एक अंतर्निहित डेटा संरचना के रूप में Hash Table का उपयोग करता है।ट्रीपाइप एक अंतर्निहित डेटा संरचना के रूप में रेड-ब्लैक ट्री का उपयोग करता है।
नल कुंजी और मान HashMap Null कुंजी को एक बार किसी भी समय विज्ञापन नल मान की अनुमति देता है।ट्री मैप नल कुंजी की अनुमति नहीं देता है, लेकिन किसी भी समय नल मान की अनुमति देता है।
विस्तार और लागू होता हैHashMap AbstractMap वर्ग और नक्शे इंटरफ़ेस लागू करता है।TreeMap AbstractMap वर्ग और विस्तार SortedMap और NavigableMap इंटरफ़ेस लागू करता है।
प्रदर्शनHashMap तेजी से काम करता है।HashMap की तुलना में TreeMap धीमी गति से काम करता है।


हाशप की परिभाषा

हैश मैप एक मैप क्लास है। इसका उपयोग करता है हैश टेबल, नक्शे की मुख्य मूल्य जोड़ी को संग्रहीत करने के लिए एक डेटा संरचना के रूप में। कुंजी-मूल्य जोड़ी का सम्मिलन का उपयोग करके किया जाता है हैश कोड का चांबियाँ। इसलिए, मानचित्र की प्रत्येक कुंजी अद्वितीय होनी चाहिए क्योंकि इसका उपयोग मूल्यों को पुनः प्राप्त करने के लिए किया जाएगा।

हाशपैप में प्रविष्टि क्रम है नहीं संरक्षित जिसका अर्थ है कि हैशमप ऑब्जेक्ट उन तत्वों को वापस नहीं करता है, जिस क्रम में उन्हें डाला गया था। दूसरी ओर, जिन तत्वों को वापस किया जाएगा, वह क्रम तय नहीं है।

चाभी होने की अनुमति है शून्य एक बार में, लेकिन मान हो सकता है शून्य किसी भी समय। HashMap शामिल कर सकते हैं विजातीय कुंजी के साथ ही मूल्यों के लिए वस्तुओं।

HashMap के चार निर्माता हैं:

HashMap () HashMap (मैप मी) HashMap (अंतर क्षमता), HashMap (अंतर क्षमता, फ्लोट आरओआरटी)

प्रथम कंस्ट्रक्टर हाशपॅप की खाली वस्तु बनाता है। दूसरा कंस्ट्रक्टर मैप एम के तत्वों का उपयोग करके हाशप को इनिशियलाइज़ करता है। तीसरा निर्माता तर्क में प्रदान की गई क्षमता के साथ हाशप को इनिशियलाइज़ करता है। चौथा कंस्ट्रक्टर क्षमता को आरंभ करता है और साथ ही हाशप ऑब्जेक्ट के भराव अनुपात को भी शुरू करता है।


डिफ़ॉल्ट क्षमता HashMap की है 16, और डिफ़ॉल्ट अनुपात भरें HashMap की है 0.75.

ट्रीपैप की परिभाषा

जैसे हाशपैप, ट्री-मैप एक मैप क्लास भी है। ट्रीपैप फैली हुई है AbstractMap कक्षा और उपकरण NavigabelMap तथा SortedMap। ट्रीपॉपर ऑब्जेक्ट ट्री संरचना में मैप तत्वों को संग्रहीत करता है। मानचित्र को संग्रहीत करने के लिए उपयोग की जाने वाली डेटा संरचना है लाल-काला पेड़.

ट्रीपाइप मुख्य मूल्य जोड़ी को क्रमबद्ध क्रम में संग्रहीत करता है जो तत्वों की तेजी से पुनः प्राप्ति में मदद करता है। ट्रीपॉब्स ऑब्जेक्ट तत्वों को अंदर लौटाता है क्रमबद्ध (आरोही) गण।

TreeMap के चार निर्माता हैं:

ट्री मैप () ट्री मैप (तुलनाकर्ता <? सुपर के> कंप्यूटर अनुप्रयोग) ट्री मैप (मानचित्र <? एक्स; के; फैली हुई है> वी> एम) ट्री मैप (सॉर्टेड मैप एसएम)

प्रथम निर्माता ट्रीपैप का एक खाली ऑब्जेक्ट बनाते हैं जो कि प्राकृतिक रूप से इसकी कुंजी में क्रमबद्ध होगा। दूसरा कंस्ट्रक्टर एक खाली पेड़ का नक्शा बनाएगा जिसे छांटा जाएगा तुलनित्र सी.एम.पी.तीसरा उपर्युक्त निर्माणकर्ता एक ट्रीमैप बनायेगा जिसका आरंभिक प्रविष्टियों के उपयोग से किया जाएगा नक्शा चौथा कंस्ट्रक्टर एक ट्रीमैप बनायेगा, जिसका आरंभिक प्रविष्टियों के उपयोग से किया जाएगा SortedMap एस.एम..

Treemap के पास अपनी खुद की कोई नई विधि नहीं है यह इंटरफ़ेस NavigableMap और SortedMap और AbstractMap वर्ग की विधि का उपयोग करता है।

  1. मैप ऑब्जेक्ट बनाने के लिए दोनों वर्गों का उपयोग किया जाता है, लेकिन हैशपैप और ट्रेमेप के बीच बुनियादी अंतर यह है कि हैशपॅस इन्सर्टेशन ऑर्डर को बनाए नहीं रखता है जबकि ट्रेमेप करता है।
  2. मैप तत्वों को स्टोर करने के लिए हशमैप द्वारा उपयोग की जाने वाली डेटा संरचना हैश तालिका है और मैप तत्वों को संग्रहीत करने के लिए ट्री मैप द्वारा उपयोग की जाने वाली डेटा संरचना लाल-काला पेड़ है।
  3. हाशमैप और ट्रेमेप दोनों ही वर्ग एब्सट्रैप क्लास का विस्तार करते हैं, लेकिन हैशपॉप क्लास मैप मैप को लागू करता है और ट्रीपेज नेवीगैबलपॉइंट और सॉर्टेडमैप इंटरफेस को लागू करता है।
  4. मान दोनों में किसी भी समय नल हो सकते हैं, लेकिन कुंजी को केवल हाशप में एक बार नल होने की अनुमति है और एक कुंजी कभी भी ट्रेमैप में नहीं हो सकती है।
  5. HashMap का प्रदर्शन तेज़ है यह मैप तत्वों को सॉर्ट करने में समय बर्बाद नहीं करता है जैसा कि TreeMap करता है। इसलिए, TreeMap, HashMap की तुलना में धीमा प्रदर्शन करता है।

निष्कर्ष:

ट्री मैप का उपयोग केवल तब किया जाना चाहिए जब आपको सॉर्ट किए गए फॉर्म में मुख्य मूल्य जोड़ी की आवश्यकता हो। छँटाई के रूप में प्रदर्शन लागत शामिल है। HashMap अनसिंक्रनाइज़ किया जा रहा तेजी से काम करता है।