समान वितरण और अधिकतम भार सहित इस समस्या के समाधान के लिए यहां एक कठिन शुरुआत है।
डिब्बे और गेंदों या कलम या बक्से या बाल्टी या एम और एन, लोगों (पी) और दरवाजे (डी) के बजाय पदनाम के रूप में उपयोग किया जाएगा।
कुछ निश्चित लोगों को दिए गए प्रत्येक दरवाजे के लिए एक सटीक अपेक्षित मूल्य है। उदाहरण के लिए, 5 लोगों और 5 दरवाजों के साथ, अनुमानित अधिकतम दरवाजा औसत (पी/डी) से 1.2864 {(1429-625)/625} है और न्यूनतम दरवाजा बिल्कुल -0.9616 {(24-625)/625 है } मतलब के नीचे}। माध्य से उच्चतम दरवाजे की दूरी का पूर्ण मूल्य छोटे दरवाजे की तुलना में थोड़ा बड़ा है क्योंकि सभी लोग एक दरवाजे से गुजर सकते हैं, लेकिन दरवाजे से एक भी शून्य से कम नहीं जा सकता है।बड़ी संख्या में लोगों (पी/डी> 3000) के साथ, औसत और निम्नतम दरवाजे से उच्चतम दरवाजे की दूरी के पूर्ण मूल्य के बीच का अंतर नगण्य हो जाता है।
दरवाजे की एक विषम संख्या के लिए, केंद्र का दरवाजा अनिवार्य रूप से शून्य है और स्केलेबल नहीं है, लेकिन अन्य सभी दरवाजे पी = डी का प्रतिनिधित्व करने वाले कुछ मूल्यों से स्केलेबल हैं। घ = 5 के लिए ये गोल मान हैं:
-1,163 -0,495 0 * 0,495 1,163 * धीरे-धीरे से -0.12
तो इन मानों से शून्य के करीब पहुंच, आप लोगों की उम्मीद की संख्या लोगों में से किसी की गिनती के लिए गणना कर सकता है अधिकतम दरवाजे सहित 5 दरवाजों में से प्रत्येक के माध्यम से जा रहा है। मध्यम आदेशित द्वार के अलावा, माध्य से अंतर sqrt (पी/डी) द्वारा स्केलेबल है।
तो, पी के लिए = 50,000 और घ = 5:
अपेक्षित अधिकतम दरवाजा है, जो 5 दरवाजे के किसी भी, = 1.163 * sqrt (पी/डी) + पी/डी किया जा सकता है के माध्यम से जा रहे लोगों की संख्या। = 1.163 * वर्ग (10,000) + 10,000 = 10,116.3 पी/डी < 3,000 के लिए, इस समीकरण से परिणाम थोड़ा बढ़ाया जाना चाहिए।
अधिक लोगों के साथ, मध्य दरवाजा धीरे-धीरे शून्य के करीब और 0.11968 से पी = 100 और डी = 5 पर शून्य के करीब आता है। इसे हमेशा शून्य तक गोल किया जा सकता है और अन्य 4 दरवाजे की तरह काफी अंतर होता है।
6 दरवाजों के लिए मूल्य हैं: -1,272 -0,643 -0,202 0,202 0,643 1,272
1000 दरवाजे के लिए, अनुमानित मान हैं: -3.25, -2.95, -2.79 ... 2.79, 2.95, 3.25
किसी भी डी और पी के लिए, आदेशित दरवाजे के लिए एक सटीक अपेक्षित मूल्य है। उम्मीद है कि, एक अच्छा अनुमान (एक सापेक्ष त्रुटि < 1% के साथ) मौजूद है। कुछ प्रोफेसर या गणितज्ञ को कहीं पता होना चाहिए।
समान वितरण के परीक्षण के लिए, आपको बड़ी संख्या में लोगों की बजाय कई औसत क्रमबद्ध सत्र (750-1000 काम अच्छी तरह से) की आवश्यकता होगी। इससे कोई फर्क नहीं पड़ता कि वैध सत्रों के बीच भिन्नताएं बहुत अच्छी हैं। यह यादृच्छिकता की प्रकृति है। टकराव अपरिहार्य हैं। *
640 बिट पूर्णांक का उपयोग करके सरासर ब्रूट फोर्स गणना द्वारा 5 और 6 दरवाजे के लिए अपेक्षित मूल्य प्राप्त किए गए थे और इसी विपरीत दरवाजे के पूर्ण मूल्यों के अभिसरण औसत थे। घ के लिए = 5 और पी = 170: -6,63901 -2,95905 -0,119342 2,81054 6,90686 (27,36099 31,04095 33,880658 36,81054 40,90686) घ के लिए = 6 और पी = 108: -5,19024 -2,7711 -0,973979 0,734434 2,66716 5,53372 (12,80976 15.228 9 17.026021 18.734434 20.66716 23.53372)
मुझे आशा है कि आप अपने डेटा को समान रूप से वितरित कर सकते हैं।
- यह लगभग गारंटी है कि जॉर्ज फोरमैन के बेटे या कुछ समान स्थिति आपके हैश फ़ंक्शन के खिलाफ लड़ेंगे। और उचित आकस्मिक योजना सभी अच्छे प्रोग्रामर का काम है।
आपके प्रयास के लिए धन्यवाद। 'पूरी तरह से' यादृच्छिक इनपुट दिया गया है, मैं कुछ सैद्धांतिक परिणाम के साथ अपने प्रदर्शन की तुलना करके हैश फ़ंक्शन को सत्यापित करने की तलाश में था। चूंकि बॉल्स इन बॉन्स आसानी से मापा मूल्यों के लिए सरल संभावनाएं प्रदान करता है, इसलिए मैं अपने हैश फ़ंक्शन को आसानी से सत्यापित करने में सक्षम होने की उम्मीद कर रहा था।लेकिन फिर अधिकतम लोड 'ऑर्डर-ऑफ' परिणाम प्रस्तुत किए गए थे, हालांकि '3' वाला एक व्यक्ति वादा करता था - लेकिन क्या यह' log2' या 'loge' है (मैं आधार और w.h.p :) सोच रहा हूं :)? – philcolbourn
शायद इस मूल्य को मापना संभव नहीं है, लेकिन जिस तरह से पेपर प्रस्तुत किया गया वह आशा देता है। मैं अधिकतम विचार व्यवहार को साजिश करने के लिए अपना विचार लेता हूं यह देखने के लिए कि क्या मैं निरंतर कारक में हूं, लेकिन 65k स्लॉट्स की एक बड़ी तालिका के साथ भी, अधिकतम लोड w.h.p 4 हो सकता है - इसलिए निरंतर कारक महत्वपूर्ण है। – philcolbourn
इसके अलावा, वास्तविकता में आप एन हैश के साथ आकार एन की अपनी हैश तालिका को भरने का लक्ष्य नहीं रखेंगे, लेकिन यह सेट पॉइंट किसी भी हैश फ़ंक्शन को परीक्षण करने की अनुमति देता है जो अच्छा होगा और चेक में हैश फ़ंक्शन प्रदर्शन तर्क रखेगा - मेरे लिए, यह कहने में सक्षम होने के लिए कि हैश फ़ंक्शन सही ढंग से व्यवहार करता है, किसी के कहने के मुकाबले बहुत अधिक मूल्यवान है कि "यह हैश फ़ंक्शन लंबे टेक्स्ट स्ट्रिंग के लिए अच्छा काम करता है"। – philcolbourn