J'ai trouvé un algorithme intéressant pour calculer la distance de Hamming sur Ce site :
'100010' '101000'
4 Réponses :
Mettez-le:
assert hamming2("1010", "1111") == 2 assert hamming2("1111", "0000") == 4 assert hamming2("1111", "1111") == 0
Si nous voulons coller avec l'algorithme d'origine, nous devons convertir les chaînes en entiers pour pouvoir utiliser les opérateurs bitwises. puis nous pouvons l'appeler comme suit: print(hamming2('100010', '101000'))
Je pense que cela explique bien la distance de Hamming code> entre deux chaînes
C'est ce que j'utilise pour calculer la distance de Hamming.
Il compte le nombre de différences entre les chaînes de longueur égale.
def hamdist(str1, str2): diffs = 0 for ch1, ch2 in zip(str1, str2): if ch1 != ch2: diffs += 1 return diffs
Quelle est la question? Y a-t-il une erreur?
bin (int ('100010', 2)) code> produit binaire.