假設方法m1和m2是靜態的無效的,並通過處理Object []類型的參數來計算相同的結果。經驗上我們發現m1→T(N)= 100N和m2→T(N)= 10Nlog2N,其中時間以微秒爲單位。對於什麼尺寸的輸入,最好使用m1和m2? 所以我會用大數字m1,而我會用小數字m2?只是檢查答案。複雜性類
Q
複雜性類
-2
A
回答
6
您正在尋找N > 0
的值,因此100N > 10N log2 N
,所以這只是一個代數問題。將雙方除以10N
,即得到10 > log2 N
,即N < 2**10
,即N < 1024
。並不難 - !)
1
嗯,登錄 N的會打10的時候,N是1024,所以要根據您提供給我們的公式,你會用N <= 1024
第二個和第一個爲N >= 1024
。 (你在邊界上做什麼並不重要 - 它們將是平等的。)
但是,從實際的角度來看,你應該很可能選擇一個並保持那一個。你是否期望非常大的輸入或許多小輸入?這絕對是你的代碼中的瓶頸?哪一種更簡單的算法?
還有很多事情要決定哪個算法是最好的而不僅僅是給定輸入中哪個算法最快。我寧願保持一個簡單的算法,它運行的速度比一個快速但卻非常複雜的算法慢。
0
看看這個:http://www.wolframalpha.com/input/?i=plot+100*n+and+plot+10*n*log2(n)
我還沒有想出如何修改,雖然規模。無論如何,以備將來參考。
相關問題
- 1. XSD:複雜類型屬性?
- 2. 複雜性類的屬性P
- 3. 複雜性復發
- 4. Hashtbl.create複雜性
- 5. 複雜性將
- 6. 這些複雜性類是否正確?
- 7. Web服務類型的複雜性
- 8. 複雜性()在枚舉類方法
- 9. 複雜性問題類P,NP,EXP?
- 10. XML架構複雜類型屬性
- 11. Java類加載器的複雜性
- 12. 減少服務類的複雜性
- 13. 任何集合中的複雜類型內的複雜類型(屬性網格)
- 14. 複雜類型
- 15. 複雜類型
- 16. 複雜類型
- 17. 空間複雜性復發
- 18. itertools.permutations的複雜性
- 19. Tableview UiDesign複雜性
- 20. 複雜性證明
- 21. Object.keys()的複雜性?
- 22. RandomAccessFile Java - 複雜性
- 23. 複雜性結合
- 24. 降低複雜性
- 25. Perl的複雜性?
- 26. List.mem的複雜性
- 27. 複雜屬性3.2.12
- 28. 通信複雜性
- 29. trie的複雜性
- 30. 複雜性大O
不,這是O(n log n),因爲這是最重要的複雜性。 – 2009-10-17 18:35:18
當我回復你在Alex的回答中提出的評論時,是的,這是正確的。 – 2009-10-17 19:04:21