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.