Czy ktoś może wskazać mi źródło zawierające listę złożoności Big-O podstawowych funkcji bibliotecznych clojure, takich jak conj, cons itd.? Wiem, że Big-O różni się w zależności od rodzaju danych wejściowych, ale czy jest dostępny taki zasób? Czuję się niekomfortowo, kodując coś, nie mając pojęcia, jak szybko to się skończy.Funkcje Big O z biblioteki clojure
Odpowiedz
Oto tabela składa się John Jacobsen i podjęte from this discussion:
późno do partii tutaj, ale znalazłem the link in the comments of the first answer być bardziej ostateczne, więc jestem przeksięgowanie go tutaj z kilkoma modyfikacjami (to znaczy, english->big-o
)
W kolekcjach nieposortowanych, O (log n) jest prawie stały czas, a ponieważ 2 węzłów może zmieścić się w węzłach podzielonych na bity trie, oznacza to worst-case complexity of log32232 = 6.4. Wektory są również tries where the indices are keys.
Posortowane kolekcje wykorzystują wyszukiwanie binarne tam, gdzie to możliwe. (Tak, są to zarówno technicznie O (log n), w tym stały współczynnik służy jako odniesienie.)
Listy gwarantują stały czas operacji dla pierwszego elementu i O (n) dla wszystkich pozostałych.
- 1. Big-O z wycięciem listy
- 2. Confused o Big O notacji
- 3. Big O metod rekursywnych
- 4. Big O - zagnieżdżone pętle
- 5. Jak udowodnić relacje big-o
- 6. Ukryte funkcje Clojure
- 7. Funkcje Clojure dla Emacs?
- 8. Znajdowanie Big-O z wieloma zagnieżdżonymi pętlami?
- 9. Big O z dołączenia do golang
- 10. Analiza dwóch algorytmów Big-O
- 11. Analiza obrazu biblioteki/funkcje
- 12. Analiza Big-O dla pętli
- 13. Jak testować funkcje w Clojure?
- 14. Jak wymawiać niektóre funkcje w Clojure
- 15. Czy ktoś mógłby wytłumaczyć Big O kontra Big Omega vs Big Theta?
- 16. Clojure witryny biblioteki i tutoriale
- 17. Złożoność algorytmu (Big-O) sudoku solver
- 18. Uproszczenie złożoności Big-O tego wykładniczego algorytmu
- 19. Zrozumienie notacji Big O - pękanie wywiadu kodowania
- 20. Jak sprawdzić, czy Big O jest logarytmiczny?
- 21. Złożoność std :: find_end jako Big-O
- 22. Lista analizy big-o dla struktur danych Python
- 23. Znaczenie średniej złożoności przy korzystaniu z notacji Big-O
- 24. Big O notacji i nie rozumiem z wykładu
- 25. Użyj interfejsów Clojure w projekcie biblioteki Java
- 26. PHP: Jak wywołać funkcje biblioteki standardowej
- 27. Jak korzystać z biblioteki w maven repo dla projektu clojure?
- 28. Funkcje eksportu z biblioteki DLL tylko w liczbie porządkowej
- 29. Co to jest Big O of linq .where?
- 30. "Bogate" aplikacje internetowe z Clojure
"1" w cudzysłowie, jest tak blisko, że nie ma znaczenia (według Rich Hickey.) Ale tak naprawdę jest O (log_32 głębokość)? –
Ta tabela nie jest całkowicie poprawna. "last" jest zawsze O (n). 'cons' jest zawsze O (1) (zakładając, że' seq' jest zawsze O (1)). 'conj' w wektorze to tylko" 1 ", a nie 1. – kotarak
@kotarak Czy byłbyś w stanie trochę poprawić swoje poprawki? :) – Anonymous