Bonjour,
J'ai un algorithme de décodage fréquentiel à mettre en place (i.e. décodage d'un texte par étude de la fréquence d'apparition des lettres)
à priori, pas bien compliqué: les lettres qui reviennent le plus sont en français sont le E, puis le A, donc en théorie la lettre qui a la plus grosse fréquence d'apparition devrait être un E et la seconde un A.

Sauf qu'on me demande d'afficher à l'écran plusieurs messages possible (les plus probables, dixit l'énoncé); ainsi l'utilisateur choisit le bon.
Encore une fois, pas trop dur: parfois le A peut sortir plus souvent, donc on peut aussi envoyer un texte décodé où la lettre la plus fréquente est associée au A, et non plus au E... et puis quelques autres possibilités.

Mais là arrive la véritable difficulté: Le texte qu'on me demande de décodé ainsi est tout petit. Trop petit. 11 caractères, pour un calcul de fréquences, c'est pas jouasse. Pour ne rien arranger, 4 lettres sont doublées, les autres non.
Avec ça, je dois renvoyer les décodages "les plus probables", dont un sera le bon.... Mais, techniquement, j'ai 4 caractères qui peuvent potentiellement être A, E, I, S (les plus fréquents en français), ou n'importe quoi d'autre parce qu'avec cette taille de texte la fréquence veut pas dire grand chose...Genre, je pourrais avoir le Z en double, pourquoi pas!

Donc, ma question est simple: connaissez-vous des méthodes pour déterminer des cas probables, qui utilisent les fréquences (parce que c'est obligé, c'est mon énoncé, même si dans ce cas ça paraît un peu débile). J'avais pensé remplacer successivement les 4 lettres les plus probables par E, ce qui me renvoie 4 textes possibles, mais il est envisageable que le E n'apparaisse pas deux fois dans mon texte. Et quand bien même, l'algorithme doit fonctionner avec n'importe quel texte, donc il ne faut pas que je traite uniquement le E....

Bref, des idées?