Sobes.tech
Junior — Middle

Massivdə elementlərin əlavə edilməsi, axtarışı, oxunması və silinməsi əməliyyatlarının ən pis və orta hallarda vaxt nəticəsi nədir?

sobes.tech Süni İntellekt

AI-dan cavab

iOS-də standart massiv üçün (məsələn, NSArray və ya NSMutableArray) əməliyyatların müvəqqəti xüsusiyyətləri təxminən aşağıdakı kimidir:

  • Əlavə:

    • Array-in sonuna əlavə etmək (append): orta və ən pis hal — O(1) amortizasiya olunmuş (əgər yaddaşın yenidən bölüşdürülməsi tələb olunmursa).
    • Başlanğıca və ya ortasına: O(n), çünki elementləri hərəkət etdirmək lazımdır.
  • Axtarış (əgər indekslə): O(1), çünki array indeksləşdirilib.

  • İndeksə görə oxuma: O(1).

  • Silmə:

    • Array-in sonundan: O(1).
    • Başlanğıc və ya ortasından: O(n), elementlərin hərəkətindən dolayı.

Buna görə, array-in ortasında və ya başlanğıcında əlavə və silmə əməliyyatları xətti mürəkkəbliyə malikdir, erişim və array-in sonunda əlavə/silme isə sabit (amortizasiya olunmuş) vaxt alır.