什么是汉明距离?
汉明距离
汉明距离是用于比较两个二进制数据字符串的度量。在比较两个等长二进制字符串时,汉明距离是在两个比特不同的比特位置的数量。
两个字符串 a 和 b 之间的汉明距离表示为 d(a,b)。
它用于在数据通过计算机网络传输时进行错误检测或错误校正。它也用于编码理论中比较等长数据字。
汉明距离的计算
为了计算两个字符串 a 和 b 之间的汉明距离,我们执行它们的异或运算 (a⊕ b),然后计算结果字符串中 1 的总数。
示例
假设有两个字符串 1101 1001 和 1001 1101。
11011001 ⊕ 10011101 = 01000100。由于它包含两个 1,因此汉明距离 d(11011001, 10011101) = 2。
最小汉明距离
在一组等长字符串中,最小汉明距离是在该集合中所有可能的字符串对之间的最小汉明距离。
示例
假设有四个字符串 010、011、101 和 111。
010 ⊕ 011 = 001,d(010, 011) = 1。
010 ⊕ 101 = 111,d(010, 101) = 3。
010 ⊕ 111 = 101,d(010, 111) = 2。
011 ⊕ 101 = 110,d(011, 101) = 2。
011 ⊕ 111 = 100,d(011, 111) = 1。
101 ⊕ 111 = 010,d(011, 111) = 1。
因此,最小汉明距离 dmin = 1。
广告