Sobes.tech
Junior — Middle

Spiega il concetto di complessità temporale O(n) e in quali situazioni viene applicato.

sobes.tech AI

Risposta dell'AI

La complessità temporale O(n) significa che il tempo di esecuzione dell'algoritmo cresce linearmente con l'aumentare della dimensione dei dati di input n.

Ciò significa che se il numero di elementi nel set di dati raddoppia, il tempo di esecuzione si raddoppia circa.

Esempio di situazione con O(n):

  • Ricerca di un elemento in un array non ordinato tramite scansione completa.

  • Calcolo della somma di tutti i numeri in una lista.

Esempio in Swift:

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

Qui, la funzione attraversa tutti gli elementi dell'array una volta, quindi la sua complessità temporale è O(n).