Sobes.tech
Junior — Middle

Koja je vremenska složenost operacija pretraživanja i dodavanja elemenata u ArrayList?

sobes.tech АИ

Одговор од АИ

Operacije dodavanja elementa na kraj ArrayList se obavljaju u amortizovanom vremenu O(1), jer kada je potrebno proširenje unutrašnjeg niza, vreme može da se poveća, ali u proseku dodavanje je brzo.

Pretraživanje elementa po indeksu (metod get(int index)) se dešava u vremenu O(1), jer je ArrayList implementiran na osnovu niza.

Međutim, pretraživanje elementa po vrednosti (na primer, contains() ili indexOf()) zahteva prolazak kroz elemente i traje vreme O(n), gde je n broj elemenata u listi.