वहाँ एक कुशल एल्गोरिथ्म के लिए i-वें प्रेषण व्यवस्था है?


9

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

इस उद्देश्य के लिए, डीरेंजमेंट एक महान फिट प्रतीत होता है। अगर मैं काफी हद तक एक व्यवस्था उत्पन्न कर सकता हूं, तो मैं सिर्फ एक व्यवस्था चुन सकता हूं और इसका उपयोग यह तय करने के लिए कर सकता हूं कि किसे उपहार दिया जाए।

लास वेगास विधि के साथ यादृच्छिक प्रेषण व्यवस्था की जा सकती है। लेकिन समस्या यह है, यह केवल बहुपद चल रहे समय की उम्मीद है। इसलिए मुझे आई-वें डिग्रेडेशन खोजने की इस समस्या का सामना करना पड़ा। अगर मैं बेतरतीब ढंग से i [1, D_n] में i चुन सकता हूं, और कुछ सबसे खराब स्थिति बहुपद समय (कुशल) एल्गोरिथ्म का उपयोग करके i-th डिग्रेडेशन प्राप्त कर सकता हूं, तो यह हो गया है।


1
क्या आप कृपया प्रश्न के लिए प्रेरणा की व्याख्या कर सकते हैं? अर्थात आप इस प्रश्न में क्यों रुचि रखते हैं?
केव

2
शायद आप गुप्त सांता खेलना चाहते हैं और किसी भी संभावना है :) लेने के लिए तैयार नहीं हैं
लेव Reyzin

क्या आप इस व्यवस्था के बारे में एक पंक्ति जोड़ सकते हैं कि आपके पास क्या व्यवस्था है?
विजय डी

जवाबों:


9

वास्तव में यह अच्छा सवाल हो सकता है लेकिन यह अपने मौजूदा रूप में बुरी तरह से तैयार है। यादृच्छिक व्युत्पन्न उत्पन्न करने के लिए प्रसिद्ध एल्गोरिदम में रैखिक अपेक्षित समय होता है, लेकिन शायद सबसे खराब स्थिति बहुपद समय एल्गोरिदम को खोजने के लिए यह एक खुली समस्या है।

उदाहरण के लिए देखें: http://www.siam.org/proceedings/analco/2008/anl08_022martinezc.pdf (और स्लाइड: http://www.lsi.upc.edu/~conrado/research/talks/alalco08.pdf )


यह मुझे सही उत्तर की तरह लगता है।
सुरेश वेंकट

10
पुनरावृत्ति नहीं करता है! N = (n (1) (((n + 1) +! (N in 2)) en.wikipedia.org/wiki/Derangement में वर्णित यादृच्छिक के लिए सबसे खराब स्थिति बहुपद एल्गोरिथ्म का नेतृत्व करता है। पीढ़ी?
डेविड एप्पस्टीन

हाँ आप सही है। मैं सोच रहा था कि एक छोटी सी पकड़ है क्योंकि आपको सबसे खराब स्थिति में {1, ..., n} के मनमाने सबसेट में यादृच्छिक संख्याओं को उत्पन्न करने में सक्षम होना है, लेकिन ऐसा करना आसान है।
didest

0

क्यों नहीं, प्रत्येक स्थिति i के लिए , बेतरतीब ढंग से मैं के अलावा अन्य सभी तत्वों में से चुनें ? उदाहरण के लिए, आप [0..n-2] से मूल सरणी में एक सूचकांक चुन सकते हैं , और यदि आपको j> = i मिलता है तो आप j + 1 का उपयोग करते हैं ।


3
क्या इससे सभी अपमान समान रूप से होने की संभावना है?
डेविड एप्पस्टीन

ओह, अच्छा बिंदु - यह तत्व को बाद में सरणी में अधिमानतः पहले से सरणी में रखेगा। यदि आप एक यादृच्छिक क्रम में लक्ष्य सरणी में स्लॉट्स भरने के लिए थे तो सभी व्युत्पन्नता समान रूप से (समरूपता से) होने की संभावना होगी।
पॅट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.