Sobes.tech
Senior

Koliko vremena traje dodavanje na početak i kraj liste u Pythonu?

sobes.tech АИ

Одговор од АИ

У Python-у, сложеност операција додавања у листу зависи од позиције:

  • Додавање на крај листе (list.append()) ради у амортизованом времену O(1), јер су листе реализоване као динамички низови.
  • Додавање на почетак листе (list.insert(0, value)) ради у O(n), јер се сви елементи померају удесно да би се направио простор.

Ако је потребно ефикасно додавање елемената на почетак и крај, боље је користити collections.deque, где обе операције раде у O(1):

from collections import deque

d = deque()
d.append(1)       # додавање на крај — O(1)
d.appendleft(0)   # додавање на почетак — O(1)
Koliko vremena traje dodavanje na početak i kraj… - sobes.tech