[英]What is the runtime of the following recursive algorithm using the Master Theorem?
我不確定以下算法的運行時間:
T(n) = 2T(n/2) + n/logn
我認為按照主定理,這將是O(n)
,但我不知道n/logn
是否漸近等於n
。 有人可以解釋嗎?
考慮(n / log(n))/ n的極限,因為n趨於無窮大。 對於所有n> 0,(n / log(n))/ n等於1 / log(n)。 1 / log(n)趨於零,因為n趨於無窮大,而不是1,因此n / log(n)與n不漸近相等。
n
和log n
不漸近相等。 如果您嘗試計算n = inf
極限中的lim n / log n
,則可以使用L'Hôpital法則並以lim n
為無窮大快速結束,從而證明n
漸近於log n
。
但是,更大的問題是,在少數地方,您的問題病情很糟。 這種情況不滿足主定理的先決條件。 在示例7中搶劫。 -正是您的情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.