सामग्री पर जाएं

रैंडम सूची शफलर - मुफ्त ऑनलाइन सूची यादृच्छीकरण उपकरण

प्रमाणित फिशर-याट्स एल्गोरिदम का उपयोग करके मुफ्त रैंडम सूची शफलर। तुरंत नाम, छात्र, टीमें या कार्य को यादृच्छिक बनाएं। शिक्षकों, टूर्नामेंट और निष्पक्ष निर्णयों के लिए बिल्कुल सही। साइन अप की आवश्यकता नहीं।

यादृच्छिक सूची मिश्रक

फेरबदल करने के लिए आइटम दर्ज करें, प्रति पंक्ति एक। खाली पंक्तियां स्वचालित रूप से हटा दी जाएंगी।

लोडिंग कैलकुलेटर...
📚

दस्तावेज़ीकरण

यादृच्छिक सूची क्रम-विन्यासक क्या है?

यादृच्छिक सूची क्रम-विन्यासक ऐसा उपकरण है जो वस्तुओं की सूची लेकर उन्हें नए, यादृच्छिक क्रम में रखता है। नाम, कार्य या कोई अन्य चीज़, हर पंक्ति में एक, लिखें और यह उपकरण उन्हें इस तरह पुनर्व्यवस्थित करता है कि हर संभावित क्रम के सामने आने की समान संभावना हो। यह उपकरण Fisher–Yates शफल का उपयोग करता है, जो निष्पक्ष यादृच्छिक क्रम तैयार करने का एक प्रसिद्ध एल्गोरिदम है।

यादृच्छिक सूची क्रम-विन्यासक का उपयोग कैसे करें

  1. सूची को बॉक्स में लिखें या चिपकाएँ; हर पंक्ति में एक वस्तु रखें।
  2. "सूची को यादृच्छिक बनाएँ" पर क्लिक करें। वस्तुएँ तुरंत पुनर्व्यवस्थित हो जाएँगी।
  3. बटन के नीचे नए क्रम में क्रमांकित शफल की गई सूची पढ़ें।
  4. नए, स्वतंत्र शफल के लिए फिर से "सूची को यादृच्छिक बनाएँ" पर क्लिक करें।
  5. नए क्रम की प्रतिलिपि बनाने के लिए "परिणाम कॉपी करें" पर क्लिक करें, या फिर से शुरू करने के लिए "साफ़ करें" पर क्लिक करें।

इनपुट की खाली पंक्तियाँ अपने-आप हटा दी जाती हैं, इसलिए अतिरिक्त लाइन ब्रेक परिणामों में खाली प्रविष्टियाँ नहीं बनाएँगे।

Fisher–Yates शफल एल्गोरिदम कैसे काम करता है?

Fisher–Yates शफल सूची को एक बार पूरा देखता है; यह अंतिम वस्तु से शुरू होकर आगे की ओर बढ़ता है। हर चरण में वह अभी तक स्थान न दी गई सूची के हिस्से से एक वस्तु यादृच्छिक रूप से चुनता है और उसे वर्तमान स्थान की वस्तु के साथ अदला-बदली करता है।

Fisher–Yates शफल का सूत्र

n वस्तुओं वाली सूची के लिए, जिनकी स्थिति 0 से n − 1 तक क्रमांकित है:

1for i from n − 1 down to 1:
2    choose a random whole number j, where 0 ≤ j ≤ i
3    swap the items at positions i and j
4

लूप n − 1 बार चलता है, इसलिए शफल में कुल मिलाकर लगभग n चरण लगते हैं। इसे रैखिक समय कहा जाता है और O(n) लिखा जाता है। चूँकि एल्गोरिदम हर स्थिति पर ठीक एक बार विचार करता है और लगातार घटते, स्पष्ट रूप से परिभाषित वस्तु-समूह में से चयन करता है, इसलिए n! (n फैक्टोरियल: n × (n − 1) × ... × 1) संभावित क्रमों में से हर एक के परिणाम बनने की समान संभावना होती है।

उदाहरण: चार वस्तुओं वाली सूची को शफल करना

चार वस्तुओं को स्थिति 0 से 3 तक रखें: Apple, Banana, Cherry, Date।

  • i = 3: यादृच्छिक चयन j = 0 है। स्थिति 3 और 0 को बदलें → Date, Banana, Cherry, Apple
  • i = 2: यादृच्छिक चयन j = 2 है। किसी स्थिति को उसी स्थिति से बदलने पर कुछ नहीं बदलता → Date, Banana, Cherry, Apple
  • i = 1: यादृच्छिक चयन j = 0 है। स्थिति 1 और 0 को बदलें → Banana, Date, Cherry, Apple

अंतिम क्रम: Banana, Date, Cherry, Apple।

चार वस्तुओं के साथ 4! = 24 संभावित क्रम होते हैं। इनमें से हर एक, इस क्रम सहित, किसी भी शफल में सामने आने की 24 में 1 संभावना रखता है।

केवल यादृच्छिक जोड़ियों को बदलना पर्याप्त क्यों नहीं है?

एक अधिक सरल दिखाई देने वाली विधि — दो यादृच्छिक स्थितियाँ चुनकर उन्हें कई बार बदलना — यादृच्छिक लगती है, लेकिन वास्तव में ऐसी नहीं है। 1950 के दशक के कुछ शुरुआती शफल प्रोग्राम इसी तरह काम करते थे और वे चुपचाप कुछ क्रमों को दूसरों की तुलना में अधिक प्राथमिकता देते थे, भले ही किसी एक बार के परिणाम में कुछ संदिग्ध न दिखता हो। Fisher–Yates शफल इससे बचता है, क्योंकि हर वस्तु को ठीक एक बार उस स्थिति पर ले जाया जाता है, जो लगातार छोटे होते विकल्पों के एक सटीक समूह में से चुनी जाती है। इसी कारण हर अंतिम क्रम के समान रूप से संभावित होने की गारंटी मिलती है।

Fisher–Yates शफल की शुरुआत कहाँ से हुई?

सांख्यिकीविद् Ronald Fisher और Frank Yates ने प्रयोगों की रचना करते समय हाथ से शफल करने के लिए इस विधि का वर्णन 1938 में प्रकाशित सांख्यिकीय सारणियों की एक पुस्तक में किया। 1964 में Richard Durstenfeld ने इसे कंप्यूटरों के लिए अनुकूलित किया, ताकि सूची में बचे हुए तत्वों को दर्ज रखने के लिए दूसरी सूची की आवश्यकता न हो और सूची को उसी स्थान पर पुनर्व्यवस्थित किया जा सके। Donald Knuth ने इस कंप्यूटर संस्करण को अपनी 1969 की पुस्तक The Art of Computer Programming में शामिल किया, इसलिए इसे कभी-कभी Knuth शफल भी कहा जाता है। वेब ब्राउज़र आज भी इसी एल्गोरिदम का उपयोग करते हैं।

सूची क्रम-विन्यासक के सामान्य उपयोग

  • कक्षा में विद्यार्थियों के प्रस्तुतीकरण या प्रश्नों के उत्तर देने का क्रम तय करना
  • टूर्नामेंट का ब्रैकेट तैयार करना या खेल में बारी का क्रम तय करना
  • किसी समूह को यादृच्छिक टीमों में बाँटना
  • किसी विकल्प को प्राथमिकता दिए बिना छोटी सूची में से रेस्तराँ, फ़िल्म या कार्य चुनना

साधारण शफल हमेशा उपयुक्त नहीं होता। यदि कुछ वस्तुओं का आना दूसरों की तुलना में अधिक आवश्यक हो, तो भारित चयन अधिक उपयुक्त है। यदि हर श्रेणी का प्रतिनिधित्व सुनिश्चित करना हो, तो एकल यादृच्छिक शफल की तुलना में स्तरीकृत नमूनाकरण बेहतर काम करता है।

अक्सर पूछे जाने वाले प्रश्न

क्या शफल वास्तव में यादृच्छिक होता है?

यह वेब ब्राउज़र के छद्म-यादृच्छिक संख्या जनित्र (PRNG) पर निर्भर करता है, जो ऐसी संख्याओं के अनुक्रम तैयार करने का सूत्र है जो व्यावहारिक उद्देश्यों के लिए यादृच्छिक जैसे व्यवहार करते हैं। कक्षा के क्रम, टूर्नामेंट में वरीयता-निर्धारण या फ़िल्म चुनने के लिए यह पर्याप्त है। इसे कूटलेखन, जुआ प्रणालियों या ऐसी किसी भी स्थिति के लिए नहीं बनाया गया है जहाँ धन या सुरक्षा अप्रत्याशितता पर निर्भर हो; इनके लिए प्रमाणित यादृच्छिक संख्या जनित्र आवश्यक होते हैं।

क्या यह उपकरण मेरी सूची सर्वर पर भेजता है?

शफल स्वयं JavaScript का उपयोग करके पूरी तरह ब्राउज़र में चलता है, इसलिए सूची का क्रम बदलने के लिए किसी नेटवर्क अनुरोध की आवश्यकता नहीं होती। वर्तमान सूची पृष्ठ के वेब पते में भी लिखी जाती है, इसलिए उसे फिर से लोड करने या बुकमार्क करने पर सूची खोती नहीं है। यदि उस पते की प्रतिलिपि बनाई जाए, उसे साझा किया जाए या फिर से खोला जाए, तो सूची उसके साथ चली जाती है और बाद में उस पृष्ठ को लोड करने वाले किसी भी सर्वर तक पहुँच सकती है। यदि यह चिंता का विषय हो, तो सूची में संवेदनशील जानकारी न रखें।

दोहराई गई वस्तुओं का क्या होता है?

दोहराई गई वस्तुएँ बनी रहती हैं। यदि इनपुट में "Sam" दो बार दिखाई देता है, तो शफल किए गए परिणाम में भी वह दो बार दिखाई देगा, संभवतः अलग-अलग स्थितियों में।

क्या शफल की जाने वाली वस्तुओं की संख्या की कोई सीमा है?

उपकरण में कोई सीमा निर्धारित नहीं है। चूँकि शफल रैखिक समय में चलता है, इसलिए किसी भी आधुनिक उपकरण पर लंबी सूचियाँ भी एक सेकंड के छोटे-से अंश में पुनर्व्यवस्थित हो जाती हैं।

शफल करना क्रमबद्ध करने से कैसे अलग है?

क्रमबद्ध करना वस्तुओं को किसी निश्चित नियम, जैसे वर्णक्रमानुसार क्रम, के अनुसार व्यवस्थित करता है और समान इनपुट के लिए हमेशा वही परिणाम देता है। शफल करना वस्तुओं को यादृच्छिक रूप से व्यवस्थित करता है और समान इनपुट होने पर भी लगभग हर बार अलग क्रम देता है।

क्या मैं उसी सूची को एक से अधिक बार शफल कर सकता हूँ?

हाँ। "सूची को यादृच्छिक बनाएँ" पर हर क्लिक एल्गोरिदम को पहले के किसी भी शफल से स्वतंत्र रूप से फिर चलाता है। छोटी सूची में संयोग से वही क्रम दोबारा आ सकता है; बड़ी सूची में ऐसा होना अत्यंत असंभाव्य हो जाता है।