任何人都可以指向一個資源,列出基本clojure庫函數的Big-O複雜性,如連詞,反例等。我知道Big-O會根據輸入的類型而變化,但是仍然有這樣的資源可用嗎?編寫代碼時感到不舒服,沒有大概意識到它運行得有多快。clojure庫函數的大O
5
A
回答
15
這裏是一個由John Jacobsen組成,並採取from this discussion表:
7
晚在這裏聚會,但我發現the link in the comments of the first answer更加明確,所以我有一些修改,重新張貼在這裏它(即,english->big-o
):
在未排序的集合上,O(日誌 n)幾乎是恆定的時間,並且因爲節點可以適合位分區的trie節點,這意味着worst-case complexity of log32232 = 6.4。載體也是tries where the indices are keys。
排序後的集合在可能的情況下使用二分搜索。 (是的,這些在技術上都是O(log n);包括常數因子僅供參考。)
列表保證第一個元素的操作的常量時間和其他所有操作的O(n)。
相關問題
- 1. 函數的大O計算
- 2. 大O符號Python函數
- 3. 大O和函數統治
- 4. 大O,大歐米茄,大theta函數
- 5. 指數函數的大O符號
- 6. 大O - 增長的函數的速度
- 7. 計算遞歸函數的大O
- 8. 記錄函數的大O表示
- 9. 確定函數的大O複雜度
- 10. 大O分析指數函數
- 11. Clojure的:使用庫函數從REPL
- 12. Clojure核心庫中大約有多少個函數?
- 13. clojure subvec O(n)而不是O(1)?
- 14. 大O符號 - 遞歸函數
- 15. 尋找增長函數和大O
- 16. clojure中的除數函數
- 17. 大O操作數
- 18. 清理Clojure函數
- 19. Clojure函數文字
- 20. clojure sendoff println函數
- 21. 找到最大的O-O
- 22. Clojure的異徑庫 - 有最大
- 23. Clojure中的函數組合?
- 24. 測試Clojure的comp函數
- 25. Clojure中的高階函數
- 26. Clojure中的函數定義
- 27. Clojure的遞歸函數
- 28. Clojure函數的問題
- 29. clojure中的函數遞歸
- 30. 對於遞減函數的操作數大O 0
引號中的「1」表示接近一個無關緊要(根據Rich Hickey的說法)。但真的是O(log_32深度)? –
該表格不完全正確。 'last'總是O(n)。 'cons'總是O(1)(假設'seq'總是O(1))。矢量中的「conj」只是「1」,而不是1. – kotarak
@kotarak你能稍微詳述一下你的更正嗎? :) – Anonymous