Sobes.tech
Junior — Middle

Aký je časový výsledok operácií vkladania, vyhľadávania, čítania a odstraňovania prvkov v poli v najhoršom a priemernom prípade?

sobes.tech AI

Odpoveď od AI

Za štandardný poľ v iOS (napríklad NSArray alebo NSMutableArray) sú časové charakteristiky operácií približne nasledovné:

  • Vkladanie:

    • Na koniec poľa (append): priemerný a najhorší prípad — O(1) amortizované (ak nie je potrebné preusporiadanie pamäte).
    • Na začiatok alebo do stredu: O(n), pretože je potrebné posunúť prvky.
  • Vyhľadávanie (ak podľa indexu): O(1), pretože pole je indexované.

  • Čítanie podľa indexu: O(1).

  • Odstraňovanie:

    • Z konca poľa: O(1).
    • Zo začiatku alebo zo stredu: O(n), kvôli posunu prvkov.

Teda operácie vkladania a odstraňovania uprostred alebo na začiatku poľa majú lineárnu zložitosť, zatiaľ čo prístup a vkladanie/odstraňovanie na konci sú konštantné (amortizované).