La notation Big O est un moyen de comparer les algorithmes. Elle les compare en calculant la quantité de mémoire nécessaire et le temps nécessaire pour les réaliser.
La notation Big O est souvent utilisée pour identifier la complexité d'un problème, également appelée classe de complexité du problème. Le mathématicien Paul Bachmann (1837-1920) a été le premier à utiliser cette notation, dans la deuxième édition de son livre "Analytische Zahlentheorie", en 1896. Edmund Landau (1877-1938) a rendu cette notation populaire. C'est pourquoi, lorsque les gens parlent des symboles de Landau, ils se réfèrent à cette notation.
La notation Big O est nommée d'après le terme "ordre de la fonction", qui fait référence à la croissance des fonctions. La notation Big O est utilisée pour trouver la limite supérieure (la plus grande quantité possible) du taux de croissance de la fonction, ce qui signifie qu'elle calcule le temps le plus long nécessaire pour transformer l'entrée en sortie. Cela signifie qu'un algorithme peut être regroupé en fonction du temps qu'il peut prendre dans le pire des cas où le chemin le plus long sera emprunté à chaque fois.
Big O est une expression qui permet de trouver le temps d'exécution du pire scénario, montrant l'efficacité d'un algorithme sans avoir à exécuter le programme sur un ordinateur. Cela est également utile car différents ordinateurs peuvent avoir un matériel différent et donc avoir besoin de temps différent pour le réaliser. Comme le Big O suppose toujours le pire scénario, il peut montrer une mesure cohérente de la vitesse : quel que soit le matériel utilisé, O ( 1 )/O(1)} va toujours s'exécuter plus vite que O ( n ! )/O(n !)}
parce qu'ils ont des niveaux d'efficacité différents.