獲取以下O(nⁿ)和O的時間複雜度
O(1), O(log(n)), O(n⋅log(n)),O(n), O(n²), O(2ⁿ), O(n!), O(nⁿ), O(n³).
順序應該是下面的複雜性順序:
O(1) < O(log(n)) < O(n) < O(n log n) < O(n²) < O(n³) < O(2ⁿ) < O(nⁿ) < O(n!)
在我看來,nⁿ= N ⋅n⋅n⋅...
然而,n! = n(n-1)(n-2).....
所以O(n!) < O(nⁿ)
然而,另一位朋友說:O(nⁿ) < O(n!)
,
因爲n! = sqrt(2πn) ⋅ (n/e)ⁿ
我不知道如何得到這個,請詳細介紹一下這個。
你好Jongware,這不是作業,我正在練習一些面試問題。 – hellocoding
克里斯,我修改了這個問題,你認爲哪個更復雜?O(N^N)或O(N!)? – hellocoding
對於那些有數學背景的人,你可以通過比例的限制來比較,即lim n - > inf(n!/ n^n) –