Sobes.tech
Junior — Middle

Qual é o resultado temporal das operações de inserção, busca, leitura e remoção de elementos em um array no pior e no melhor caso?

sobes.tech IA

Resposta da IA

Para um array padrão no iOS (por exemplo, NSArray ou NSMutableArray), as características temporais das operações são aproximadamente as seguintes:

  • Inserção:

    • No final do array (append): caso médio e pior — O(1) amortizado (se não for necessária redistribuição de memória).
    • No início ou no meio: O(n), pois é necessário deslocar os elementos.
  • Pesquisa (se por índice): O(1), pois o array é indexado.

  • Leitura por índice: O(1).

  • Remoção:

    • Do final do array: O(1).
    • Do início ou do meio: O(n), devido ao deslocamento dos elementos.

Portanto, as operações de inserção e remoção no meio ou no início do array têm complexidade linear, enquanto o acesso e a inserção/remoção no final são constantes (amortizadas).