AccueilCPGEQCMQCM : Notions de Complexité du Code en Python QCM : Notions de Complexité du Code en Python 1. Que représente la notation Grand O ? Le nombre de lignes de code Le coût temporel ou spatial d’un algorithme La vitesse de l’ordinateur 2. Si un algorithme effectue une opération pour chaque élément d’une liste, quelle est sa complexité temporelle ? O(1) O(n) O(n^2) 3. Quelle est la complexité temporelle d’une boucle imbriquée sur une liste ? O(n) O(n^2) O(log n) 4. Laquelle de ces opérations a une complexité de O(1) ? Accéder à un élément spécifique dans une liste Parcourir tous les éléments d’une liste Trier une liste 5. Quelle est la complexité temporelle d’une recherche binaire sur une liste triée ? O(n) O(log n) O(n^2) 6. Qu’est-ce que la complexité spatiale d’un algorithme ? Le temps nécessaire pour exécuter l’algorithme La quantité de mémoire utilisée par l’algorithme La taille des données d’entrée 7. Quel est l’objectif principal de l’analyse de la complexité ? Déterminer la lisibilité du code Estimer les ressources nécessaires pour exécuter l’algorithme Calculer le nombre de lignes de code 8. Un algorithme qui divise la taille des données en deux à chaque étape a une complexité de : O(1) O(n) O(log n) 9. Si un algorithme a une complexité de O(n^2), cela signifie : Le temps d’exécution augmente linéairement avec les données Le temps d’exécution est constant Le temps d’exécution augmente quadratiquement avec les données 10. Quel est un exemple typique de complexité O(n log n) ? Une recherche binaire Un algorithme de tri efficace comme le tri rapide Accéder à un élément spécifique d’une liste Vérifier les réponses Reprendre le QCM