Sobes.tech
Junior — Middle

Jaký je časový výsledek operací vkládání, hledání, čtení a mazání prvků v poli v nejhorším a průměrném případě?

sobes.tech AI

Odpověď od AI

Pro standardní pole v iOS (například NSArray nebo NSMutableArray) jsou časové charakteristiky operací přibližně následující:

  • Vkládání:

    • Na konec pole (append): průměrný a nejhorší případ — O(1) amortizovaně (pokud není potřeba přerozdělení paměti).
    • Na začátek nebo do středu: O(n), protože je třeba posunout prvky.
  • Vyhledávání (pokud podle indexu): O(1), protože je pole indexované.

  • Čtení podle indexu: O(1).

  • Odstraňování:

    • Z konce pole: O(1).
    • Ze začátku nebo ze středu: O(n), kvůli posunu prvků.

Tedy operace vkládání a odstraňování uprostřed nebo na začátku pole mají lineární složitost, zatímco přístup a vkládání/odstraňování na konci jsou konstantní (amortizované).