Sobes.tech
Junior — Middle

Milline on uue elemendi sisestamise operatsiooni ajakulud massiivis?

sobes.tech AI

Vastus AI-lt

Uue elemendi sisestamine massiivi on halvim juhul ajakuluga O(n), kus n on massiivi elementide arv.

Põhjus on selles, et massiivil on fikseeritud suurus ning selle kesk- või algusesse sisestamiseks tuleb kõik järgnevad elemendid ühe positsiooni paremale nihutada. Kui sisestamine toimub lõpus ja on vaba koht, võib operatsioon olla O(1).

Näide:

  • Lõppu sisestamine vaba kohaga: O(1)
  • Algusesse või keskpaika sisestamine: O(n) elementide nihutamise tõttu

Dünaamilistes massiivides (näiteks Java ArrayList) toimub massiivi täitumisel kopeerimine suuremasse massivi, mis nõuab samuti O(n) aega.