Java中math.sqrt實現的時間複雜度是多少? Java的時間複雜性是用一些技術實現的,這些技術的時間複雜度我試圖確定。Math.sqrt的時間複雜度Java
1
A
回答
3
在大多數情況下,Java會嘗試使用「智能功耗」算法,這會導致O(log n)的時間複雜度。 Smart power Algorithm
此外,看起來在不同情況下,您可能會以不同的複雜性結束; Why is multiplied many times faster than taking the square root?
0
看起來它是通過委託給本地方法sqrt方法StrictMath來實現的。
因此,似乎答案將是具體實施。
嚴格地說是O(1)。理論上(但顯然不是練習),我們可以遍歷所有雙打併找到最長時間。
此外,Math.sqrt(n)的時間複雜度不直接取決於n,而是取決於表示n所需的空間量,對於雙倍應該是恆定的。
+0
這應該是[StrictMath.sqrt'的定義](http://stackoverflow.com/questions/825221/where-can-i-find-the-source-code-for-javas-square-root-function ) – 2015-03-02 17:17:48
相關問題
- 1. Math.Sqrt()的時間複雜度?
- 2. 時間複雜度(Java,Quicksort)
- 3. Java中Math.abs的時間複雜度?
- 4. 時間複雜度
- 5. 時間複雜度
- 6. 時間複雜度
- 7. 時間複雜度
- 8. 時間複雜度和空間複雜度,如何計算空間複雜度
- 9. Java Math.pow(a,b)時間複雜度
- 10. 計算函數的空間複雜度和時間複雜度
- 11. map.find()的時間複雜度
- 12. A *的時間複雜度
- 13. BST的時間複雜度
- 14. gsub的時間複雜度
- 15. 'if'in'時間複雜度
- 16. 降低時間複雜度
- 17. 算法複雜度時間
- 18. 時間複雜度說明
- 19. 字謎時間複雜度
- 20. JQUERY時間複雜度
- 21. 運行時間複雜度
- 22. 排序時間複雜度
- 23. 大O時間複雜度
- 24. 計算時間複雜度
- 25. 減少時間複雜度
- 26. 時間計算複雜度?
- 27. Python3 list.count()時間複雜度
- 28. 計算時間複雜度
- 29. 時間複雜度環
- 30. 時間複雜度驗證
請嘗試詳細說明你的問題是什麼。你給的描述很難理解。 – 2015-03-02 17:01:05
我想它會使用牛頓的方法(或其他類似的數值分析方法)。 – 2015-03-02 17:02:29
我會建議檢查:http://stackoverflow.com/questions/16232629/what-is-time-complexity-and-how-to-find-it 它很好解釋,並可以給你很好的知識你想做什麼。 – 2015-03-02 17:04:07