La tua citazione sta dicendo che se l'intervallo di interi k è linearmente proporzionale al numero totale di elementi nella raccolta n, allora un ordinamento di conteggio avrà una complessità temporale di caso migliore e di caso peggiore di O (n) , rendendolo un tipo molto efficiente in tal caso.
Big Oh (e altri nella famiglia di notazioni di Bachman-Landau) sono solo delle semplificazioni della precisa complessità della funzione in ogni caso, utilizzate per illustrare il valore crescente della funzione man mano che N cresce. Nella programmazione, Big Oh viene solitamente utilizzato nel contesto della complessità temporale; per n valori, una funzione f (n) verrà eseguita in un tempo nell'ordine di g (n), e quindi diciamo che ha una complessità Big Oh di O (g (n)). Tuttavia, il costrutto matematico di Big Oh non è così limitato. In questo caso particolare, viene usato per riferirsi alla relazione generale tra k e N come numeri.
In parole semplici, quando k (l'intervallo dei valori di una raccolta di elementi n) aumenta come n fa nell'ordine di O (n), allora l'ordinamento del conteggio sarà efficiente. Questo sarà vero se, per esempio, la lista contenesse tutti i multipli di 4 tra 1 e x (nel qual caso k ~ = x e n = x / 4, che significa k ~ = 4n = O (n)). La condizione k = O (n) sarebbe falsa per, diciamo, l'insieme di tutti i quadrati perfetti da 1 a x 2 (nel qual caso k = x 2 ma n = x, quindi k = n 2 = O (n 2 )). In tal caso, k aumenta sul quadrato (O (n 2 )) quando N aumenta linearmente (O (n)), quindi l'ordinamento del conteggio verrebbe eseguito nel tempo più complesso (che sarebbe O (n 2 )), che si comporta in modo peggiore rispetto ad altre implementazioni di ordinamento eseguite in Theta (nlogn).