簡體   English   中英

是O((log n)!)多項式?

[英]Is O((log n)!) polynomial?

我想找到O((log n)!) 我認為O((log n)!)O(n!)是相等的! 因為我認為n是無限的(log n)! n! 是平等的。 這是真的嗎? 如果是,我該怎么表明? 如果不是O((log n)!)多項式?

我認為你的后續問題是(logn)! 是多項式有界的。 這顯然不是多項式本身。 斯特林的近似給了我們

n!≤en^[n+1/2]*e^(−n)

所以,

(log n)!≤e(log n)^[1/2+log n]*e^(−log n)

現在(log n)^log n=(e^loglogn)^logn=e^[(logn)⋅(loglogn)]

因此,增長的順序大約為e^[(logn)(loglogn)−logn] =n^[(loglogn)−1]

遺憾的是,這不受任何多項式的限制,因為loglogn最終將超過任何正整數。

例如,比較(log n)! n^2

n=e^10,(log n)!=3480 ,而(e^10)2≈4.85×108

n=e^100,(log n)!≈10157 ,而e^200≈1086

由於已經完成了正確的數學運算,讓我為任何給定的c添加更直觀的解釋為什么O(log(n)!) > O(n^c) 我們假設對數是基數2,為簡單起見,選擇c為10.(該參數對於不同數量的一般值也同樣有用)。

那么,為什么會log(n)! 增長超過n^10 讓我們來看兩個函數的2的冪值,更具體地說,它們與2的最后一次冪相比增長了多少。(從現在開始n = 2^p

log(2^p)! = p * log(2^(p-1))! (2^p)^10 = 2^10 * (2^(p-1))^10 這可能看起來很復雜,但它告訴我們log(n)! 函數會將每個p次冪2的值乘以p ,但是n^10會將它的值乘以1024 ,所以log(n)! 最終會變得越來越大。

另外, log(n)! 比任何指數增長都慢,類似的參數可以通過觀察當n增長1時兩個函數乘以它們的值有多少。

讓我們回到一些基礎數學:
我們知道如果log a> log b,那么a> b :( log base大於1)
點擊這里獲取更多信息

現在我們知道log(N!)= NLogN見這里是為了證明

我們得到, log((log N)!)= logN logLogN
以來,
log(N!)是多項式,log((log N)!)是對數階,
顯然, O(N!)> O((logN)!)
希望這可以幫助。

通過使用斯特林的近似表明$ n! 〜\\ sqrt {2 \\ pi n} \\ frac {n} {e} ^ n(1 + O(frac {1} {n}))$,並使用$ \\ log {n} $的相同公式,可以檢查$ n! 對於$ \\ log {n},$的主要因素是$ n ^ n $! $相同的因子變為$ \\ log {n} ^ \\ log {n} $。 通過使用$ \\ ln {n} \\ leq n - 1 $的事實,我相信你可以很容易地證明$ O(\\ log {n}!)$小於$ O(n!)$。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM