Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Caractere le plus frequent
Écris une fonction qui trouve le caractere le plus frequent dans une chaine, en ignorant les espaces.
Si plusieurs caracteres ont la meme frequence maximale, retourne celui qui apparait en premier dans la chaine. C'est un detail important : il faut parcourir la chaine originale pour respecter l'ordre d'apparition.
Exemples : char_plus_frequent('aabbbcc') renvoie 'b' (3 occurrences) char_plus_frequent('hello world') renvoie 'l' (3 occurrences) char_plus_frequent('abcabc') renvoie 'a' (2 occurrences, comme b et c, mais a apparait en premier)
Tests (2/4)
Frequence simple
assert char_plus_frequent('aabbbcc') == 'b'
Avec espaces
assert char_plus_frequent('hello world') == 'l'
+ 0 tests cachés
Indices (3 disponibles)
Solution officielle
from collections import Counter
def char_plus_frequent(s):
sans_espace = s.replace(' ', '')
if not sans_espace:
return None
compteur = Counter(sans_espace)
freq_max = max(compteur.values())
for c in sans_espace:
if compteur[c] == freq_max:
return c
return None