एक सटीक एल्गोरिथ्म, इस रूप में है
लीफ़्स से प्रारंभ और संबंध तोड़ना रेखांकन बनाने के (वास्तव में सभी के 1 को कर रहे हैं), प्रत्येक चरण में इस लीफ़्स की मूल मिल जाए, और उन्हें नए पेड़ में विलय, प्रत्येक चरण में यदि नोड x
r
ज्ञात बच्चा है और नोड की डिग्री j
ऐसी है कि j = r+1
है, बस एक नोड जो x
की चाइल्ड नोड में नहीं है इस मामले में वर्तमान नोड के माता पिता हम कह नोड x
nice
है, और, कुछ बच्चे ऐसे देखते हैं है उन संबंधित रूटेड उप-निर्माण का निर्माण नहीं किया गया है, इस मामले में हम कहते हैं कि नोड x
bad
है।
तो प्रत्येक चरण में उनसे संबंधित माता पिता को nice
नोड्स कनेक्ट, और यह स्पष्ट है हर कदम हर कदम में भी sum of {degree of parent nice nodes}
लेता है आप कम से कम एक अच्छा नोड (कारण आप पत्ती से शुरू) है, तो एल्गोरिथ्म हे है (एन) , और यह पूरी तरह से किया जाएगा, लेकिन नोड को खोजने के लिए जिसे हटाया जाना चाहिए, वास्तव में प्रत्येक चरण में एक डिजॉइंट सूची (उप-सूची सूचियों) के आकार की जांच करने की आवश्यकता होती है, यह निर्माण में ओ (1) में किया जा सकता है, भले ही सूची का आकार n/2 से बराबर या बड़ा है, फिर संबंधित अच्छा नोड का चयन करें। (वास्तव में न्यूनतम सूची में अच्छा नोड ढूंढें जो इस स्थिति को संतुष्ट करता है)।
स्पष्ट बात यह है कि यदि पेड़ को अच्छी तरह से विभाजित करना संभव है (प्रत्येक भाग में अधिकांश एन/2 नोड है) तो आप इसे इस एल्गोरिदम द्वारा कर सकते हैं, लेकिन यदि ऐसा नहीं है (वास्तव में आप इसे दो में विभाजित नहीं कर सकते या n/2 से छोटे आकार का अधिक हिस्सा) यह आपको इसके लिए अच्छा अनुमान देता है। साथ ही आप देख सकते हैं कि इनपुट पेड़ में कोई धारणा नहीं है।
ध्यान दें: मैं नहीं जानता कि इस तरह के हैं कि यह आकार के कुछ हिस्सों n/2 की तुलना में छोटे में एक नोड को हटाने के द्वारा यह विभाजन करना असंभव है एक पेड़ के लिए संभव है।
स्रोत
2011-11-19 12:41:13
मुझे समझ में नहीं आ रहा है, अगर आप 'एच' को हटाते हैं तो आपको 9 सबट्री मिलते हैं! – Shahbaz
हां, यहां अस्पष्ट होने के लिए खेद है, मैं कई सबट्री प्राप्त कर सकता हूं लेकिन मैं नहीं चाहता कि ग्राफ के आधे से बड़ा होना चाहिए, यह सुनिश्चित करने के लिए कि मैं केवल विभाजित चरणों की एक लॉगरिदमिक गिनती करता हूं। – Listing
एक और बात, आप एक गणित मूल्य में "पेड़ को यथासंभव बराबर विभाजित" कैसे रखा जाए? – Shahbaz