संभावनाओं की कुल संख्या
1) बंद करो! आपको पहले चरित्र के लिए 62, 2 वें के लिए 62 आदि मिले हैं, इसलिए आप समाप्त करते हैं62⋅62⋅62⋅⋯62=6220, जो एक बहुत बड़ी संख्या है।
एक "लक्ष्य" स्ट्रिंग के साथ टकराव
2) जैसा कि हमने ऊपर स्थापित किया है, वहाँ हैं 6220संभावित तार। आप जानना चाहते हैं कि "लक्ष्य" स्ट्रिंग का अनुमान लगाने में आपको 100,000 से अधिक बाधाओं में से कितने का अनुमान लगाना बेहतर होगा। अनिवार्य रूप से, आप पूछ रहे हैं कि क्या
x6220≥1105
इसे प्राप्त करने के लिए, आपको x को गोल करना होगा (या एक को जोड़ना होगा, यदि वे ठीक बराबर हैं), लेकिन जैसा कि आप एक दूसरे में देखेंगे, यह वास्तव में कोई फर्क नहीं पड़ता।
मूल बीजगणित के माध्यम से, हम इसे फिर से व्यवस्थित कर सकते हैं
105x105x105xx≥6220≥(6.2⋅10)20≥6.220⋅1020≥6.220⋅1015
गणित कर रहा है, 6.220 के बारे में है 7⋅1015, तो चलो पूरी बात कहते हैं 7⋅1030 या, अधिक संक्षेप में, एक बहुत की पूरी बिल्ली।
यह निश्चित रूप से है, क्यों लंबे पासवर्ड वास्तव में अच्छी तरह से काम करते हैं :-) असली पासवर्ड के लिए, निश्चित रूप से, आपको लंबाई के तार के बारे में कम या बीस के बराबर चिंता करनी होगी, जिससे संभावनाओं की संख्या और भी अधिक बढ़ जाती है।
सूची में डुप्लिकेट
अब, अन्य परिदृश्य पर विचार करें। स्ट्रिंग्स यादृच्छिक पर उत्पन्न होती हैं और हम यह निर्धारित करना चाहते हैं कि किसी भी दो स्ट्रिंग्स के मिलान का 1: 100,000 मौका होने से पहले कितने उत्पन्न हो सकते हैं। इस समस्या के क्लासिक संस्करण को जन्मदिन की समस्या (या 'विरोधाभास') कहा जाता है और पूछता है कि दो लोगों के एक ही जन्मदिन पर क्या संभावना है। विकिपीडिया लेख [1] सभ्य दिखता है और इसमें कुछ सारणियाँ हैं जो आपको उपयोगी लग सकती हैं। फिर भी, मैं आपको यहाँ उत्तर के लिए स्वाद देने की कोशिश करूँगा।
ध्यान रखने योग्य कुछ बातें:
-एक मैच की संभावना और एक मैच न होने की संभावना 1 के बराबर होनी चाहिए P(match)=1−P(no match) और इसके विपरीत।
दो स्वतंत्र घटनाओं के लिए A तथा Bकी संभावना P(A&B)=P(A)⋅P(B)।
उत्तर प्राप्त करने के लिए, हम निश्चित संख्या में तार के लिए एक मैच न देखने की संभावना की गणना करके शुरू करने जा रहे हैं k। एक बार जब हम जानते हैं कि ऐसा कैसे करना है, तो हम उस समीकरण को दहलीज (1 / 100,000) के बराबर सेट कर सकते हैं और हल कर सकते हैंk। सुविधा के लिए, कॉल करेंN संभावित तारों की संख्या (6220)।
हम सूची को 'चलने' के लिए जा रहे हैं और इस संभावना की गणना करते हैं कि k^ {th} स्ट्रिंग किसी भी स्ट्रिंग्स से "ऊपर" सूची में मेल खाता है। पहली स्ट्रिंग के लिए, हमें मिल गया हैN कुल तार और सूची में कुछ भी नहीं है, इसलिए Pk=1(no match)=NN=1। दूसरे तार के लिए, अभी भी हैंN कुल संभावनाएं, लेकिन उनमें से एक को पहले स्ट्रिंग द्वारा "उपयोग" किया गया है, इसलिए इस स्ट्रिंग के लिए एक मैच की संभावना है Pk=2(no match)=N−1N तीसरे स्ट्रिंग के लिए, इसके लिए दो तरीके हैं एक मैच और इसलिए N−2 नहीं करने के तरीके, तो Pk=3(no match)=N−2Nऔर इसी तरह। सामान्य तौर पर, की संभावनाkवें स्ट्रिंग दूसरों से मेल नहीं खाते
Pk(no match)=N−k+1N
हालाँकि, हम चाहते हैं कि इनमें से किसी के बीच कोई मैच न हो kतार। चूंकि सभी घटनाएँ स्वतंत्र हैं (प्रश्न के अनुसार), हम इन संभावनाओं को एक साथ गुणा कर सकते हैं, जैसे:
P(No Matches)=NN⋅N−1N⋅N−2N⋯N−k+1N
इसे थोड़ा सरल किया जा सकता है:
P(No Matches)P(No Matches)P(No Matches)=N⋅(N−1)⋅(N−2)⋯(N−k+1)Nk=N!Nk⋅(N−k)!=k!⋅(Nk)Nk
पहला कदम सिर्फ एक साथ अंशों को गुणा करता है, दूसरा तथ्य की परिभाषा का उपयोग करता है (
k!=(k)⋅(k−1)⋅(k−2)⋯1) के उत्पादों को बदलने के लिए
N−k+1⋯Nकुछ अधिक प्रबंधनीय है, और एक द्विपद गुणांक में अंतिम चरण स्वैप होता है। यह हमें उत्पन्न होने के बाद किसी भी मैच होने की संभावना के लिए एक समीकरण देता है
kतार। सिद्धांत रूप में, आप इसके बराबर सेट कर सकते हैं
1100,000 और के लिए हल
k। व्यवहार में, यह एक उत्तर के लिए कठिन होने जा रहा है क्योंकि आप बड़ी संख्या से गुणा / भाग करेंगे - वास्तव में बहुत जल्दी ()
100! 150 अंकों से अधिक लंबा है)।
हालांकि, इस तथ्य की गणना करने और पूरी समस्या के लिए दोनों सन्निकटन हैं। यह पत्र [2] बताता है
k=0.5+0.25−2Nln(p)−−−−−−−−−−−−√
जहाँ p एक मैच न देखने की संभावना है। उनकी परीक्षाएं अधिकतम होती हैं
N=48,000, लेकिन यह अभी भी बहुत सटीक है। आपकी संख्याओं में प्लगिंग, मुझे लगभग मिलती है
3.7⋅1015।
संदर्भ
[१] http://en.wikipedia.org/wiki/Birthday_problem
[२] मैथिस, फ्रैंक एच। (जून १ ९९ १)। "एक सामान्यीकृत जन्मदिन की समस्या"। SIAM की समीक्षा (सोसायटी फॉर इंडस्ट्रियल एंड एप्लाइड मैथमेटिक्स) 33 (2): 265-270। JSTOR लिंक