Sobes.tech
Junior — Middle

Kokia yra laiko sudėtingumas pridėti elementą į masyvo pradžią?

sobes.tech AI

Atsakymas iš AI

Pridėti elementą į pradžią masyvo paprastai turi laiko sudėtingumą O(n), kur n yra elementų skaičius masyve.

Tai susiję su tuo, kad įterpiant į pradžią, reikia perkelti visus esamus elementus į dešinę, kad būtų vietos naujam elementui. Dinamiškuose masyvuose (pavyzdžiui, Swift Array) šis procesas reikalauja kopijavimo arba perkėlimo elementų, kas užtrunka laiką proporcingą elementų skaičiui.

Pavyzdys:

var array = [2, 3, 4]
array.insert(1, at: 0) // įterpiame 1 į pradžią
print(array) // [1, 2, 3, 4]

Čia, įterpiant 1, visi elementai perkelia į vieną poziciją į dešinę.