You are on page 1of 1

Struktura Danych I S D Przykład Zastosowania

ArrayList O(1) amortized O(n) O(n) Przechowywanie i szybki dostęp do elementów na podstawie indeksu
LinkedList O(1) O(n) O(n) Przydatna w aplikacjach wymagających ciągłego wstawiania i usuwania elementów
Vector O(1) amortized O(n) O(n) Podobne do ArrayList, ale synchronizowane dla bezpiecznego użycia w wielu wątkach
Stack O(1) O(n) O(1) Stos (LIFO), przydatny w algorytmach nawigacyjnych, takich jak nawigacja w przeglądarce
HashSet O(1) average O(1) average O(1) average Szybkie wyszukiwanie i przechowywanie unikatowych elementów
LinkedHashSet O(1) average O(1) average O(1) average Podobne do HashSet, ale zachowuje kolejność dodawania elementów
TreeSet O(log n) O(log n) O(log n) Przechowywanie elementów w uporządkowany sposób (sortowane)
EnumSet O(1) O(1) O(1) Specjalizowane dla typów wyliczeniowych, wydajne przechowywanie elementów enum
CopyOnWriteArraySet O(n) O(n) O(n) Bezpieczne wątkowo przechowywanie, gdzie operacje zapisu nie są częste
HashMap O(1) average O(1) average O(1) average Przechowywanie par klucz-wartość z szybkim dostępem
LinkedHashMap O(1) average O(1) average O(1) average Przechowywanie par klucz-wartość z zachowaniem kolejności dodawania
TreeMap O(log n) O(log n) O(log n) Sortowanie par klucz-wartość, szybki dostęp
Hashtable O(1) average O(1) average O(1) average Podobne do HashMap, ale synchronizowane i nie akceptuje kluczy/wartości null
EnumMap O(1) O(1) O(1) Optymalizowane mapy dla kluczy typu enum
WeakHashMap O(1) average O(1) average O(1) average Przechowywanie par klucz-wartość, gdzie klucze mogą być automatycznie usuwane przez Garbage Collector
IdentityHashMap O(1) average O(1) average O(1) average Specjalistyczna mapa z porównywaniem kluczy przez == zamiast metody .equals()
PriorityQueue O(log n) O(n) O(log n) Kolejka priorytetowa, używana gdy elementy muszą być przetwarzane w określonym porządku priorytetów
ArrayDeque O(1) O(n) O(1) Podwójna kolejka do szybkiego dodawania/usuwania na obu końcach
ConcurrentHashMap O(1) average O(1) average O(1) average Bezpieczna wątkowo mapa dla operacji wielowątkowych z wysoką przepustowością
ConcurrentLinkedQueue O(1) O(n) O(n) Bezpieczna wątkowo kolejka do operacji FIFO w środowiskach wielowątkowych
ConcurrentLinkedDeque O(1) O(n) O(1) Podwójna kolejka dla bezpiecznych operacji wielowątkowych
ConcurrentSkipListSet O(log n) O(log n) O(log n) Zbiór posortowanych elementów, bezpieczny wątkowo
ConcurrentSkipListMap O(log n) O(log n) O(log n) Mapa posortowanych par klucz-wartość, bezpieczna wątkowo
ArrayBlockingQueue O(1) O(n) O(n) Kolejka blokująca o ustalonym rozmiarze
LinkedBlockingQueue O(1) O(n) O(n) Kolejka blokująca z elastycznym rozmiarem
PriorityBlockingQueue O(log n) O(n) O(log n) Kolejka priorytetowa, blokująca, dla przetwarzania zadan według priorytetu
DelayQueue O(log n) O(n) O(log n) Kolejka blokująca elementy do momentu osiągnięcia opóźnienia
SynchronousQueue O(1) O(n) O(n) Kolejka bez przestrzeni wewnętrznej, gdzie każda operacja wstawiania czeka na operację pobierania
LinkedTransferQueue O(1) O(n) O(n) Elastyczna kolejka wielowątkowa z możliwością transferu elementów
LinkedBlockingDeque O(1) O(n) O(1) Podwójna kolejka blokująca dla operacji wielowątkowych
BitSet O(1) O(1) O(1) Efektywne przechowywanie dużych zbiorów wartości logicznych

You might also like