Sobes.tech
Junior — Middle

Каква е времевата сложност на операцията за добавяне на елемент в началото на масив?

sobes.tech AI

Отговор от AI

Добавянето на елемент в началото на масив обикновено има времева сложност O(n), където n е броят на елементите в масива.

Това се дължи на факта, че за да се добави в началото, трябва да се преместят всички съществуващи елементи надясно, за да се освободи място за новия елемент. В динамичните масиви (например, Swift Array) този процес изисква копиране или преместване на елементи, което отнема време пропорционално на броя на елементите.

Пример:

var array = [2, 3, 4]
array.insert(1, at: 0) // добавяме 1 в началото
print(array) // [1, 2, 3, 4]

Тук при добавяне на 1 всички елементи се преместват с една позиция надясно.