Compter les occurrences
Exercice · niveau 1 (application) · mathématiques appliquées (ECG 1re année), chapitre 11 — Informatique et algorithmique · Parcours et boucles imbriquées
Énoncé
Écrire compte(L, x) qui renvoie le nombre d'occurrences de x dans L, sans utiliser L.count.
Corrigé
def compte(L, x):
n = 0
for element in L:
if element == x:
n = n + 1
return n
Un seul parcours, un compteur : la complexité est en , et l'on ne peut pas faire mieux — il faut bien regarder chaque élément au moins une fois pour savoir s'il vaut x.
Deux détails. On itère sur les éléments plutôt que sur les indices : c'est plus lisible et l'on ne peut pas se tromper de borne. Et sur une liste vide, la boucle ne s'exécute pas et la fonction renvoie , ce qui est la bonne réponse sans qu'aucun cas particulier n'ait été écrit.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.