Middle
Care este complexitatea temporală a adăugării unui element la sfârșitul, începutul și mijlocul unei liste Python?
sobes.tech AI
Răspuns de la AI
În Python, listele sunt implementate ca array-uri dinamice, așa că complexitatea temporară a operațiilor depinde de poziția de inserție:
- Adăugarea la sfârșit (
list.append(element)) — O(1) amortizat, deoarece de obicei există spațiu, dar uneori are loc o redistribuire a memoriei. - Adăugarea la început (
list.insert(0, element)) — O(n), deoarece toate elementele sunt mutate spre dreapta. - Adăugarea în mijloc (
list.insert(index, element)) — de asemenea O(n), deoarece elementele după index sunt mutate.
Prin urmare, pentru adăugări eficiente la început sau în mijloc, este mai bine să folosiți alte structuri de date, cum ar fi collections.deque.