Sobes.tech
Junior — Middle

Qual è la complessità temporale dell'operazione di aggiunta di un elemento all'inizio di un array?

sobes.tech AI

Risposta dell'AI

L'inserimento di un elemento all'inizio di un array ha generalmente una complessità temporale di O(n), dove n è il numero di elementi nell'array.

Questo perché, per inserire all'inizio, è necessario spostare tutti gli elementi esistenti verso destra per fare spazio al nuovo elemento. Nei array dinamici (ad esempio, Swift Array), questo processo richiede di copiare o spostare gli elementi, il che richiede un tempo proporzionale al numero di elementi.

Esempio:

var array = [2, 3, 4]
array.insert(1, at: 0) // inserisce 1 all'inizio
print(array) // [1, 2, 3, 4]

Qui, inserendo 1, tutti gli elementi vengono spostati di una posizione verso destra.