Sobes.tech
Junior — Middle

Koji je vremenski rezultat operacija umetanja, pretraživanja, čitanja i brisanja elemenata u nizu u najgorem i prosečnom slučaju?

sobes.tech АИ

Одговор од АИ

Za standardni niz u iOS (npr. NSArray ili NSMutableArray) vremenske karakteristike operacija su otprilike sledeće:

  • Umetanje:

    • Na kraj niza (append): prosečno i najgore — O(1) amortizovano (ako nije potrebna redistribucija memorije).
    • Na početak ili u sredinu: O(n), jer je potrebno pomeriti elemente.
  • Pretraga (ako po indeksu): O(1), jer je niz indeksiran.

  • Čitanje po indeksu: O(1).

  • Brisanje:

    • Sa kraja niza: O(1).
    • Sa početka ili u sredini: O(n), zbog pomeranja elemenata.

Dakle, operacije umetanja i brisanja u sredini ili na početku niza imaju linearnu složenost, dok je pristup i umetanje/brisanje na kraju konstantno (amortizovano).