Sobes.tech
Junior — Middle

Jaká je časová složitost operací hledání a přidávání prvků v ArrayList?

sobes.tech AI

Odpověď od AI

Operace přidání prvku na konec ArrayList se provádí v amortizovaném čase O(1), protože při nutnosti rozšíření vnitřního pole se čas může zvýšit, ale průměrně je přidání rychlé.

Vyhledání prvku podle indexu (metoda get(int index)) probíhá v čase O(1), protože ArrayList je implementován na základě pole.

Nicméně hledání prvku podle hodnoty (například contains() nebo indexOf()) vyžaduje průchod prvky a trvá čas O(n), kde n je počet prvků v seznamu.