मैं इस पर काफी निराश हूं।मास्टर प्रमेय वास्तव में कब लागू किया जा सकता है?
CLRS में 3 संस्करण, पेज 95 (अध्याय 4.5), यह कहा गया है कि
T(n) = 2T(n/2) + n lg n
मास्टर प्रमेय के साथ हल नहीं किया जा सकता अंतर
f(n)/n^(log_b(a)) = (n lg n)/n^1 = lg n
है क्योंकि पुनरावृत्ति
की तरह बहुपद नहीं।लेकिन फिर मैं this जैसे पृष्ठों पर आया हूं, जहां पृष्ठ के निचले हिस्से में, यह सटीक वही पुनरावृत्ति का उल्लेख करता है और कहता है कि इसे मास्टर प्रमेय के साथ हल किया जा सकता है क्योंकि यह "विस्तारित केस 2" में भी पड़ता है हालांकि अंतर गैर-बहुपद है। यह n lg^2 n
बन जाता है (f(n)
पर लॉग कारक को एक से बढ़ाकर)।
तब मैं this तरह पृष्ठों के पार चलो जहां उदाहरण में (ई) विस्तारित केस 2 (पुनरावृत्ति T(n) = 4T(n/2) + n^2 lg n
है) का एक स्पष्ट आवेदन की तरह लगता है, लेकिन फिर समाधान n^2 log^2 n
नहीं है, बल्कि n^2 log n
! क्या मैं गलत हूं या पेपर गलत है?
क्या कोई भी विरोधाभास को साफ़ कर सकता है और इसे बिल्कुल स्पष्ट कर सकता है जब मास्टर प्रमेय का उपयोग किया जा सकता है और जब यह नहीं हो सकता है? बहुपद-अंतर जांच मामले कब होता है, और यह कब नहीं होता? विस्तारित मामला 2 उपयोग योग्य है, या क्या यह वास्तव में कुछ का उल्लंघन करता है?
संपादित करें:
मैं सुलझाने की कोशिश की पुनरावृत्ति (ई) सीधे दूसरे पेपर से और मैं:
T(n) = n^2 lg^2(n)/2 + n^2 lg(n)/2
यह नहीं बड़ा थीटा n^2 lg^2 n
है?
ध्यान दें कि पुस्तक में मास्टर प्रमेय का मामला 2 सामान्यीकृत रूप से अलग है जिसे आप कहीं और सामना करते हैं (आपके उदाहरणों सहित)। सामान्यीकृत फॉर्म कहां से आया? पुस्तक में व्यायाम 4.6-2, यह वास्तव में साबित करना काफी आसान है। :-) –
@MichaelFoukarakis क्या आप तब कहेंगे कि बहुपद अंतर नियम केवल 1 और 3 मामलों पर लागू होता है? –
बहुपद अंतर "नियम" polylogarithmic मामले की तुलना में एक कठोर कथन है। यह सभी 3 मामलों पर लागू होता है। # 2 के मामले में, इसे आसानी से आराम करने की अनुमति है। –