簡體   English   中英

證明 n! = O(n^n)

[英]Prove that n! = O(n^n)

我如何證明 n! = O(n^n)?

我假設你想證明函數n! 是集合O(n^n)的一個元素。 這可以很容易地證明:

定義:函數f(n)是集合O(g(n))的元素,如果存在c>0使得存在m使得對於所有k>m我們有f(k)<=c*g(k)

所以,我們必須比較n! 反對n^n 讓我們一個接一個地寫:

n!  = n * (n-1) * (n-2) * (n-3) * ... * 3 * 2 * 1
n^n = n *  n    *  n    *  n    * ... * n * n * n

如您所見,第一行 ( n! ) 和第二行 ( n^n ) 在右側都有n項目。 如果我們比較這些項目,我們會看到每個項目最多與第二行中的對應項目一樣大。 因此n! <= n^n n! <= n^n

所以,我們可以 - 查看定義 - 說,存在c=1使得存在m=5使得對於所有k>5我們有那個k! < k^k k! < k^k ,這證明了n! 確實是O(n^n)的一個元素。

暫無
暫無

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

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