के लिए डेटा संरचना का चयन करना मेरे पास x (लाख) सकारात्मक पूर्णांक हैं, जहां उनके मान स्वीकृत (+2,147,483,647) जितना बड़ा हो सकते हैं। मान लीजिए कि वे अद्वितीय हैं, लुकअप गहन कार्यक्रम के लिए उन्हें स्टोर करने का सबसे अच्छा तरीका क्या है।बहुत बड़े डेटा
अब तक मैंने एक बाइनरी एवीएल पेड़ या हैश टेबल का उपयोग करने के बारे में सोचा था, जहां पूर्णांक मैप किए गए डेटा (एक नाम) की कुंजी है। हालांकि यह सुनिश्चित नहीं है कि मैं ऐसी बड़ी चाबियाँ और हैश टेबल के साथ इतनी बड़ी मात्रा में कार्यान्वित कर सकता हूं (क्या यह टकराव के लिए प्रवण होने के अलावा 0.8 लोड कारक नहीं बनायेगा?)
क्या मुझे कुछ सलाह मिल सकती है जिस पर डेटा संरचना मेरी स्थिति के लिए उपयुक्त हो सकती है
क्या आप इस संपूर्ण संरचना को स्मृति में रखने की कोशिश कर रहे हैं? डेटाबेस आमतौर पर उस तरह की खोज के लिए बी-पेड़ का उपयोग करते हैं। संरचना डिस्क पर संग्रहीत होती है और इंडेक्स में बहुत बड़ी संख्या में चाबियों के साथ वांछित कुंजी खोजने के लिए केवल थोड़ी सी संख्याएं होती हैं। – JOTN
@JOTN: सीपीयू कैश लाइन भरें प्रदर्शन पर समान प्रभाव डाल सकती हैं जो डाटाबेस पेज पढ़ता है, यद्यपि मिलीसेकंड स्केल के बजाय माइक्रोसेकंड पर। –
यदि आप एक स्व-संतुलन वृक्ष का उपयोग करने जा रहे हैं तो मैं आपको इस पेपर को पढ़ने की दृढ़ता से अनुशंसा करता हूं: http://web.stanford.edu/~blp/papers/libavl.pdf – anilbey