Junior — Middle
Qual é a complexidade temporal da operação de adicionar um elemento no início de um array?
sobes.tech IA
Resposta da IA
A inserção de um elemento no início de um array geralmente tem uma complexidade de tempo de O(n), onde n é o número de elementos no array.
Isto ocorre porque, para inserir no início, é necessário deslocar todos os elementos existentes para a direita para abrir espaço para o novo elemento. Em arrays dinâmicos (por exemplo, Swift Array), esse processo requer copiar ou deslocar elementos, o que leva um tempo proporcional ao número de elementos.
Exemplo:
var array = [2, 3, 4]
array.insert(1, at: 0) // insere 1 no início
print(array) // [1, 2, 3, 4]
Aqui, ao inserir 1, todos os elementos são deslocados uma posição para a direita.