मान लीजिए एक निरंतर डिग्री वाला पेड़ है जिसकी संरचना हमें नहीं पता है। समस्या उत्पादन के लिए पेड़ है प्रपत्र के प्रश्नों पूछकर: "नोड करता है नोड से पथ पर झूठ नोड के लिए ?"। मान लें कि प्रत्येक क्वेरी का जवाब निरंतर समय में एक ओरेकल द्वारा दिया जा सकता है। हम के मूल्य को जानते हैं , पेड़ में नोड्स की संख्या। इसका उद्देश्य संदर्भ में पेड़ के उत्पादन में लगने वाले समय को कम करना है ।
क्या उपरोक्त समस्या के लिए एक एल्गोरिदम मौजूद है?
मान लें कि में किसी भी नोड की डिग्री अधिकतम 3 पर है।
क्या मुझे पता है
बाउंडेड व्यास का मामला आसान है । यदि पेड़ का व्यास , तो हम एक डिवाइड-एंड-कॉनकोर एल्गोरिथ्म प्राप्त कर सकते हैं:
किसी भी बाइनरी ट्री में एक अच्छा विभाजक होता है जो पेड़ को 1 / 3n से कम आकार के घटकों में विभाजित करता है।
- किसी भी शीर्ष x को चुनें। यदि यह एक अच्छा विभाजक लेबल है जो पुनरावृत्ति करता है।
- X के सभी 3 पड़ोसी खोजें।
- पड़ोसी की दिशा में आगे बढ़ें जिसमें सबसे अधिक संख्या में नोड्स हैं। पड़ोसी के साथ चरण 2 को दोहराएं।
चूंकि विभाजक सबसे चरणों में लेता है , हमें एक एल्गोरिदम मिलता है।
अ यादृच्छिक एल्गोरिथ्म। (नीचे टिप्पणी से स्थानांतरित)
दो कोने एक्स और वाई बेतरतीब ढंग से उठाओ। 1/9 संभावना के साथ वे एक विभाजक के विपरीत पक्षों पर झूठ बोलेंगे। से y तक पथ के मध्य नोड को चुनें । देखें कि क्या यह एक विभाजक है, यदि बाइनरी खोज नहीं करते हैं।
इसमें O ( n) लगता है विभाजक को खोजने के लिए अपेक्षित समय। तो हमें O ( n) मिलता है यादृच्छिक एल्गोरिथ्म।
पृष्ठभूमि। मुझे इस समस्या के बारे में एक दोस्त से पता चला, जो संभाव्य चित्रमय मॉडल में काम करता है। उपरोक्त समस्या मोटे तौर पर एक जंक्शन वृक्ष की संरचना को सीखने में मेल खाती है , जो एक अलंकरण का उपयोग करते हुए दी जाती है, जिसे तीन यादृच्छिक चर X, Y और Z दिए गए हैं, X और Y के बीच पारस्परिक सूचना के मूल्य को Z का मान बता सकते हैं। यदि मान करीब है शून्य के लिए, हम मान सकते हैं कि Z, X से Y तक के मार्ग पर स्थित है।