Zastanawiam się, czy jest realizacja mapie który jest:Wydajna niezmienna implementacja mapy?
- niezmienne, dzięki czemu można go używać w programowania funkcyjnego, a wysiłku zapewnić transakcji i współbieżności.
- Szybki. Sprawdziłem Binary Search Trees (RB, AVL) i Próby, ale żadne z nich nie wydawało się tak szybkie jak Hash Tables. Czy istnieje implementacja mapy obsługującej stały czas dla aktualizacji i wyszukiwania? (Lub przynajmniej bardzo szybki czas logarytmiczna)
W skrócie, jest tam funkcjonalna struktura danych, które można porównać z Hash Maps w wydajności?
Dziękuję bardzo za pomocną odpowiedź. Niedługo sprawdzę Clojure. – Phil
Niezmienne mapy Clojure używają 32-way hash mapowanych tablic hasłowych (http://en.wikipedia.org/wiki/Hash_array_mapped_trie). Są świetną strukturą danych - prawie tak szybką, jak zmienna HashMap, ale z wszystkimi zaletami trwałości i niezmienności. – mikera