Sobes.tech
Junior — Middle

Bir diziye yeni bir öğe ekleme işleminin zaman karmaşıklığı nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Bir diziye yeni bir öğe eklemek en kötü durumda O(n) zaman karmaşıklığına sahiptir, burada n dizi içindeki öğe sayısıdır.

Bunun nedeni, dizinin sabit bir boyuta sahip olması ve ortasına veya başına bir öğe eklemek için tüm sonraki öğelerin sağa doğru bir pozisyon kaydırılması gerektiğidir. Eğer ekleme sona yapılıyor ve boş alan varsa, işlem O(1) olabilir.

Örnek:

  • Boş alan varsa sona ekleme: O(1)
  • Başlangıca veya ortaya ekleme: Öğelerin kaydırılması nedeniyle O(n)

Dinamik dizilerde (örneğin, Java'daki ArrayList), dizinin taşması durumunda, daha büyük boyutlu yeni bir diziye kopyalama yapılır, bu da yine O(n) zaman alır.