Imaginez que vous donnez à quelqu'un une carte avec le code "5SBDO0" dessus.
Dans certaines polices, la lettre "S" est difficile à distinguer visuellement du chiffre cinq (comme pour le chiffre zéro et la lettre "O").
En lisant le code à haute voix, il peut être difficile de distinguer «B» de «D», ce qui nécessite de dire «B comme chez le garçon», «D comme chez le chien» ou d'utiliser un « alphabet phonétique » à la place.
Quel est le plus grand sous-ensemble de lettres et de chiffres qui, dans la plupart des cas, auront à la fois un aspect visuel sans ambiguïté et un son sans ambiguïté lorsqu'ils seront lus à haute voix?
Contexte:
Nous voulons générer une chaîne courte qui peut encoder autant de valeurs que possible tout en étant facile à communiquer.
Imaginez que vous ayez une chaîne de 6 caractères, "123456". Dans la base 10, cela peut coder 10 ^ 6 valeurs.
Dans l'hex "1B23DF", vous pouvez encoder 16 ^ 6 valeurs dans le même nombre de caractères, mais cela peut sembler ambigu lors de la lecture à haute voix. ("B" contre "D")
De même pour toute chaîne de N caractères, vous obtenez (taille de l'alphabet) ^ N valeurs.
La chaîne est limitée à une longueur d'environ six caractères, en raison de vouloir s'adapter facilement à la capacité de la mémoire de travail humaine .
Ainsi, pour trouver le nombre maximum de valeurs que nous pouvons encoder, nous devons trouver le plus grand ensemble non ambigu de lettres / chiffres. Il n'y a aucune raison pour laquelle nous ne pouvons pas considérer les lettres GZ et une ponctuation courante, mais je ne veux pas avoir à comparer manuellement par paires "est-ce que G sonne comme A?", "Est-ce que G sonne comme B?", "Ne G sonne comme C "moi-même. Comme nous le savons, ce serait un travail linguistique O (n ^ 2) à faire =) ...