Junior — Middle
Qual è la complessità temporale delle operazioni di ricerca e aggiunta di elementi in ArrayList?
sobes.tech AI
Risposta dell'AI
Le operazioni di aggiunta di un elemento alla fine di una ArrayList vengono eseguite in tempo amortizzato O(1), poiché quando è necessario espandere l'array interno, il tempo può aumentare, ma in media l'aggiunta è rapida.
La ricerca di un elemento per indice (metodo get(int index)) avviene in tempo O(1), poiché ArrayList è implementato su un array.
Tuttavia, la ricerca di un elemento per valore (ad esempio, contains() o indexOf()) richiede di scorrere gli elementi e richiede tempo O(n), dove n è il numero di elementi nella lista.