Ieri sera stavo discutendo con un altro programmatore che anche se qualcosa potrebbe essere O (1), un'operazione che è O (n) potrebbe sovraperformarla se c'è una grande costante nell'algoritmo O (1). Non era d'accordo, quindi l'ho portato qui.
Ci sono esempi di algoritmi che superano notevolmente quelli della classe sottostante? Ad esempio, O (n) è più veloce di O (1) o O (n 2 ) è più veloce di O (n).
Matematicamente questo può essere dimostrato per una funzione con limiti superiori asintotici, quando si ignorano i fattori costanti, ma esistono tali algoritmi in natura? E dove troverei esempi di questi? Per quali tipi di situazioni vengono utilizzati?
n
abbastanza grande da compensare la costante (che è il punto della notazione big-O).