Sobes.tech
Junior — Middle

Explique o conceito de complexidade de tempo O(n) e em que situações ele é aplicado.

sobes.tech IA

Resposta da IA

A complexidade temporal O(n) significa que o tempo de execução do algoritmo aumenta linearmente com o aumento do tamanho dos dados de entrada n.

Isto significa que, se o número de elementos no conjunto de dados duplicar, o tempo de execução também aproximadamente duplica.

Exemplo de uma situação com O(n):

  • Pesquisa de um elemento em um array não ordenado por busca exaustiva.

  • Cálculo da soma de todos os números numa lista.

Exemplo em Swift:

func sumArray(_ array: [Int]) -> Int {
    var sum = 0
    for num in array {
        sum += num
    }
    return sum
}

Aqui, a função percorre todos os elementos do array uma vez, portanto, sua complexidade temporal é O(n).