Sobes.tech
Junior — Middle

Aká je časová zložitosť operácie pridania prvku na začiatok poľa?

sobes.tech AI

Odpoveď od AI

Pridanie prvku na začiatok poľa má zvyčajne časovú zložitosť O(n), kde n je počet prvkov v poli.

To je spôsobené tým, že na vloženie na začiatok je potrebné posunúť všetky existujúce prvky doprava, aby sa uvoľnilo miesto pre nový prvok. V dynamických poliach (napríklad Swift Array) tento proces vyžaduje kopírovanie alebo posúvanie prvkov, čo trvá čas úmerný počtu prvkov.

Príklad:

var array = [2, 3, 4]
array.insert(1, at: 0) // vložíme 1 na začiatok
print(array) // [1, 2, 3, 4]

Tu, pri vkladaní 1, sa všetky prvky posunú o jednu pozíciu doprava.