Współtwórca Guava tutaj.
Um, co tam jest do powiedzenia? Wszystkie zbiory oparte na hash (i oparte na enum) mają operacje pojedynczego wpisu w stałym czasie, dokładnie tak, jak można się spodziewać. (HashMultiset
, LinkedHashMultiset
, ConcurrentHashMultiset
, HashBiMap
, HashBasedTable
, ImmutableSet
, ImmutableMap
, EnumMultiset
, EnumBiMap
itd wszystkie należą do tej kategorii). Wszystkie kolekcje oparty na drzewie/sortowych mieć logarytmiczną czas ich działania pojedynczego wejścia, w tym TreeMultiset
, ImmutableSortedMap
, i ImmutableSortedSet
.
Wśród multimap, no cóż, dokumentacja w zasadzie mówi ci o Map
i implementacjach kolekcji wartości, i możesz to zrozumieć. HashMultimap
jest w zasadzie HashMap
do HashSet
s, LinkedHashMultimap
JEST LinkedHashMap
do LinkedHashSet
s, ArrayListMultimap
JEST HashMap
do ArrayList
s, LinkedListMultimap
JEST LinkedHashMap
do LinkedList
s (wydajność mądry, jeśli nie jest technicznie prawdziwe), TreeMultimap
JEST TreeMap
do TreeSet
s , ImmutableSetMultimap
jest s. ImmutableMap
do s, .
Jedyną rzeczą, która może nie być oczywiste jest chyba, że implementacje SortedMultiset
zapewnić subMultiset().size()
operacje w O(log n)
czasie których nie można było zrobić tylko z JDK TreeMap<E, Integer>
.
Wszystkie widoki kolekcji (bardzo lubimy widoki) zwracają się w stałym czasie i mają asymptotykę, jakiej można się spodziewać.
Czy jest coś bardziej konkretnego, o co się martwisz?
(Ogólnie rzecz biorąc, Guava jest zasadniczo podstawową biblioteką używaną przez Google w produkcji, co, jak sądzę, jest bardzo mocnym dowodem na to, że narzędzia działają w zadowalającym środowisku, a Guava jest stale ulepszany, te ulepszenia są dostępne za darmo).
Których parametrów pracy szczególnie potrzebujesz? –
Biblioteka Guawy jest duża. Na które operacje w szczególności patrzysz? – Perception
Wspaniale byłoby udostępnić jako tabelę nowych operacji kolekcjonowania (MultiSet, Multimap, BiMap, Table). Podobnie jak w kolekcji java [notacja BigO] (http://simplenotions.wordpress.com/2009/05/13/java-standard-data-structures-big-o-notation/). –