Mentre la risposta accettata è abbastanza buona, non tocca ancora il vero motivo per cui O(n)=O(2n) .
La notazione Big-O descrive la scalabilità
Alla base, Big-O Notation non è una descrizione di quanto tempo impiega un algoritmo a funzionare. Né è una descrizione di quanti passaggi, righe di codice o confronti fa un algoritmo. È molto utile quando usato per descrivere come un algoritmo si ridimensiona con il numero di input.
Prendi una ricerca binaria, per esempio. Dato un elenco ordinato, come trovi un valore arbitrario al suo interno? Bene, potresti iniziare da metà. Dal momento che l'elenco è ordinato, il valore medio ti dirà in quale metà dell'elenco si trova il tuo valore target. Quindi l'elenco che devi cercare è ora diviso a metà. Questo può essere applicato in modo ricorsivo, quindi andando al centro del nuovo elenco e così via fino a quando la dimensione dell'elenco è 1 e non hai trovato il tuo valore (o non esiste nell'elenco). Raddoppiare la dimensione dell'elenco aggiunge solo un ulteriore passaggio all'algoritmo, che è una relazione logaritmica. Quindi questo algoritmo è O(logn). Il logaritmo è di base 2, ma non importa: il nocciolo della relazione è che la moltiplicazione dell'elenco per un valore costante aggiunge solo un valore costante al tempo.
Contrastare una ricerca standard attraverso un elenco non ordinato - l'unico modo per cercare un valore in questo caso è quello di controllare ognuno. Lo scenario peggiore (che è ciò che Big-O implica specificamente) è che il tuo valore è proprio alla fine, il che significa che per un elenco di dimensioni n , devi controllare n valori. Raddoppiare la dimensione dell'elenco raddoppia il numero di volte che è necessario verificare, che è una relazione lineare. O(n) . Ma anche se si dovessero eseguire due operazioni su ciascun valore, alcune elaborazioni, ad esempio, la relazione lineare è ancora valida. O(2n) semplicemente non è utile come descrittore, poiché descriverebbe esattamente la stessa scalabilità di O(n) .
Apprezzo che molte di queste risposte ti stiano sostanzialmente dicendo di arrivare a questa conclusione da solo leggendo la definizione di Big-O. Ma questa comprensione intuitiva mi ha preso un po 'di tempo per avvolgere la mia testa e così te la spiego nel modo più chiaro possibile.