什么是汉明距离?

汉明距离

汉明距离是用于比较两个二进制数据字符串的度量。比较两个相等长度的二进制字符串时,汉明距离是两个比特不同的比特位置数。

两个弦a和b之间的汉明距离表示为d(a,b)。

当数据通过计算机网络传输时,用于错误检测或错误纠正。它还在编码理论中用于比较等长数据字。

汉明距离的计算

为了计算两个字符串之间的汉明距离,我们执行它们的XOR操作(a⊕b),然后计算结果字符串中的总1s。

例 

假设有两个字符串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。

因此,最小汉明距离d min = 1。