हैशसेट क्लास जावा कलेक्शन फ्रेमवर्क का हिस्सा है, जो एक तेज़, अव्यवस्थित संग्रह प्रदान करता है जो डुप्लिकेट तत्वों की अनुमति नहीं देता है। इसे हैशमैप के शीर्ष पर बनाया गया है, जिसका अर्थ है कि यह समान समय जटिलता लाभ प्राप्त करता है लेकिन पूरी तरह से तत्व विशिष्टता पर केंद्रित है। इस लेख में, हम पता लगाएंगे कि हैशसेट कैसे काम करता है, क्या चीज़ इसे अद्वितीय बनाती है, और यह अन्य संग्रहों से अलग क्यों है।
एक हैशसेट है:
// Parameterized constructor with initial capacity SetsetWithInitialCapacity = new HashSet(5); // Parameterized constructor using a collection Set setWithCollection = new HashSet(Arrays.asList(4, 4, 3)); // Default constructor with default capacity 16 Set set = new HashSet();
set.add(1); set.add(2); set.add(1); // Duplicate value is ignored System.out.println(set); // Output -> [1, 2]
यदि आपको डुप्लिकेट मानों को अनदेखा करने के बजाय उन्हें बदलने की आवश्यकता है, तो हैशसेट सही विकल्प नहीं होगा। ऐसा इसलिए है क्योंकि यह तत्व विशिष्टता को प्राथमिकता देता है।
// Parameterized constructor with initial capacity SetsetWithInitialCapacity = new HashSet(5); System.out.println(setWithInitialCapacity.size()); // Output -> 0
हालांकि setWithInitialCapacity की क्षमता 5 है, आकार 0 है क्योंकि आकार सेट में मौजूद तत्वों की संख्या को दर्शाता है, प्रारंभिक क्षमता को नहीं। आप क्षमता को आंतरिक भंडारण स्थान के रूप में सोच सकते हैं, जो तत्वों को जोड़ने पर समायोजित हो जाती है।
// Parameterized constructor using a collection SetsetWithCollection = new HashSet(Arrays.asList(4, 4, 3)); System.out.println(setWithCollection); // Output -> [3, 4] or [4, 3]
यदि आपको क्रमबद्ध तत्वों को बनाए रखने की आवश्यकता है, तो ट्रीसेट का उपयोग करने पर विचार करें, जो सुनिश्चित करता है कि तत्व आरोही क्रम में व्यवस्थित हैं।
साक्षात्कारों में, एक आम सवाल यह है कि क्या आप हैशसेट में किसी तत्व का index पुनः प्राप्त कर सकते हैं। उत्तर है नहीं, क्योंकि हैशसेट तत्वों को संग्रहीत करने के लिए एक हैशिंग तंत्र का उपयोग करता है, न कि किसी सूची या सरणी जैसी सूचकांक-आधारित संरचना का।
चूंकि हैशसेट एक हैशमैप द्वारा समर्थित है, यह तत्वों को संग्रहीत करने के लिए मानचित्र की कुंजियों का उपयोग करता है, जबकि मान अप्रासंगिक हैं। यही कारण है कि HashSet में प्रत्येक तत्व अद्वितीय होना चाहिए, HashMap की कुंजियों की तरह।
हैशसेट एक शक्तिशाली उपकरण है जब आपको एक तेज़, अव्यवस्थित संग्रह की आवश्यकता होती है जो डुप्लिकेट से बचाता है। हालाँकि यह अधिकांश परिचालनों के लिए O(1) समय जटिलता प्रदान करता है, लेकिन इसमें सॉर्टिंग और इंडेक्सिंग जैसी सुविधाओं का अभाव है। डेवलपर्स के लिए, यह जानना कि हैशसेट, हैशमैप से कैसे संबंधित है, इसके आंतरिक कामकाज को समझने और संग्रह ढांचे का बेहतर उपयोग करने में मदद करता है।
अगली पोस्ट में, हम संग्रह अवधारणाओं के बारे में उम्मीदवारों के ज्ञान का परीक्षण करने के लिए साक्षात्कार में अक्सर पूछे जाने वाले एक सामान्य साक्षात्कार प्रश्न का पता लगाएंगे।
जावा बुनियादी बातें
साक्षात्कार अनिवार्यताओं की सारणी
जावा मेमोरी एसेंशियल्स
हैप्पी कोडिंग!
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3