मैं HashMap
HashSet
से तेज़ क्यों कारण पढ़ रहा/शोध कर रहा हूं।हैश मैप हैशसेट से तेज़ क्यों है?
मैं काफी निम्नलिखित बयानों समझ नहीं कर रहा हूँ: क्योंकि मूल्यों एक अद्वितीय कुंजी के लिए जुड़े हुए हैं
HashMap
HashSet
से तेज है।HashSet
में, सदस्य ऑब्जेक्ट का उपयोग हैशकोड मान की गणना के लिए किया जाता है जो दो ऑब्जेक्ट्स के लिए समान हो सकता है ताकिequals()
विधि समानता की जांच के लिए उपयोग की जा सके। यदि यहfalse
देता है, तो इसका मतलब है कि दो ऑब्जेक्ट अलग हैं।HashMap
में, हैशकोड मान की गणना मुख्य वस्तु का उपयोग करके की जाती है।HashMap
हैशकोड मान की गणना मुख्य वस्तु का उपयोग करके की जाती है। यहां, सदस्य ऑब्जेक्ट का उपयोग हैशकोड की गणना करने के लिए किया जाता है, जो दो ऑब्जेक्ट्स के लिए समान हो सकता है, इसलिएequals()
विधि समानता की जांच के लिए उपयोग की जाती है। यदि यहfalse
देता है, तो इसका मतलब है कि दो ऑब्जेक्ट अलग हैं।
मेरे सवाल का निष्कर्ष करने के लिए:
मैंने सोचा था कि
HashMap
औरHashSet
उसी तरह से hashCode गणना। वे अलग क्यों हैं?क्या आप एक ठोस उदाहरण प्रदान कर सकते हैं कि
HashSet
औरHashMap
हैशकोड को अलग-अलग गणना कर रहा है?मुझे पता है कि "मुख्य वस्तु" क्या है, लेकिन "सदस्य वस्तु" का क्या अर्थ है?
HashMap
HashSet
, और तेज़ी से वही काम कर सकता है। हमेंHashSet
क्यों चाहिए? उदाहरण:HashMap <Object1, Boolean>= new HashMap<Object1, boolean>(); map.put("obj1",true); => exist map.get("obj1"); =>if null = not exist, else exist
आपको 'मानचित्र' और 'सेट' के बीच के अंतर के बारे में पढ़ना चाहिए। वे 'संग्रह' के दो अलग-अलग प्रकार हैं। एक बार ऐसा करने के बाद, यह स्पष्ट होना चाहिए कि मानचित्र से एक विशिष्ट ऑब्जेक्ट प्राप्त करना एक सेट से तेज़ क्यों है। – Magnilex
हैशसेट हैश मैप पर बनाया गया है। और सेट विशिष्टता के लिए प्रयोग किया जाता है। यह नोटा कुंजी मूल्य जोड़ी संग्रह है। –
हां। मुझे पता है कि वे विभिन्न इंटरफेस लागू करते हैं। लेकिन कुछ लोग कहते हैं कि हैशसेट बैकएंड में हैशपैप का उपयोग कर रहा है। यदि यह सच है, हैशपैप की तुलना में हैशसेट धीमा क्यों होगा? – runcode