Źródło: Arkusze CKE
W którym przypadku kolekcja typu lista będzie bardziej efektywna niż tablica?
Warianty odpowiedzi
-
A
Kiedy chcemy uzyskać dostęp do elementów za pomocą indeksu
-
B
Kiedy liczba elementów w kolekcji jest stała
-
C
Kiedy znamy dokładny rozmiar kolekcji przed kompilacją
-
D
Kiedy liczba elementów w kolekcji dynamicznie się zmienia
Wyjaśnienie
Tablica wymaga w pamięci komputera zarezerwowania stałego, ciągłego bloku o z góry określonym rozmiarze. Jeśli chcesz dodać do niej nowy element ponad ten limit, system musi stworzyć osobną, większą tablicę i przepisać do niej całą dotychczasową zawartość, co jest bardzo kosztowne.
Lista dynamiczna radzi sobie z tym problemem bez konieczności ręcznego alokowania pamieci przez programistę. Rozszerza się i zmniejsza elastycznie wraz z dodawaniem lub usuwaniem danych.
Dlatego praca z listą jest znacznie bardziej efektywna w sytuacjach, gdy liczba elementów często się zmienia podczas działania aplikacji.