के साथ हैश मैप का प्रदर्शन यहां मेरी स्थिति है। मैं दो java.util.HashMap का उपयोग कर रहा हूं ताकि टॉमकैट पर चल रहे जावा वेब ऐप में कुछ बार इस्तेमाल किए गए डेटा को स्टोर किया जा सके। मुझे प्रत्येक हैशमैप में प्रविष्टियों की सटीक संख्या पता है। चाबियां तार क्रमशः, और स्याही होगी।विभिन्न प्रारंभिक क्षमता और लोड फैक्टर
मेरा सवाल है, आरंभिक क्षमता और लोडफैक्टर सेट करने का सबसे अच्छा तरीका क्या है?
क्या मुझे क्षमता वाले तत्वों की संख्या और लोड क्षमता 1.0 के बराबर क्षमता निर्धारित करनी चाहिए? मैं बहुत अधिक स्मृति का उपयोग किये बिना पूर्णत: सर्वश्रेष्ठ प्रदर्शन करना चाहता हूं। हालांकि मुझे डर है कि तालिका अच्छी तरह से भर नहीं जाएगी। सटीक आकार की एक तालिका के साथ, क्या महत्वपूर्ण टक्कर नहीं मिलती है, जिससे सही तत्व खोजने के लिए एक (आमतौर पर छोटा) स्कैन होता है?
मान लीजिए (और यह एक खिंचाव है) हैश फ़ंक्शन पूर्णांक कुंजी का एक साधारण मोड 5 है, इसका मतलब यह नहीं होगा कि कुंजी 5, 10, 15 एक ही बाल्टी को दबाएगी और फिर एक भरने की तलाश करेगी उनके बगल में बाल्टी? क्या एक बड़ी प्रारंभिक क्षमता प्रदर्शन में वृद्धि होगी?
इसके अलावा, यदि इसके लिए हैशपैप की तुलना में बेहतर डेटास्ट्रक्चर है, तो मैं इसके साथ पूरी तरह से खुला हूं।
मानचित्र में कितनी प्रविष्टियां हैं, और स्ट्रिंग कुंजी की औसत लंबाई क्या है? – Avi
कुल प्रविष्टियां 20 से 50 के बीच होगी और स्ट्रिंग की लंबाई की लंबाई 10-30 –
के बीच एक चरित्र गणना होगी, यह अपेक्षाकृत छोटा है, क्या आप वाकई इसके बारे में चिंता करने की ज़रूरत है? जब तक आपके पास बहुत सारे उदाहरण न हों तो डिफ़ॉल्ट हैश मैप पैरामीटर के साथ जाएं। – starblue