Hamming Distance: Difference between revisions
Jump to navigation
Jump to search
(3 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
The Hamming distance between two string of equal length is the number of positions at which the corresponding symbols are different. In other words, it measures the minimum number of substitutions required to change on string into the other, or the minimum number of errors that could have transformed one string into the other. | The Hamming distance between two string of equal length is the number of positions at which the corresponding symbols are different. In other words, it measures the minimum number of substitutions required to change on string into the other, or the minimum number of errors that could have transformed one string into the other. | ||
=Implementations= | =Implementations= | ||
==Hamming Distance between Two | ==Hamming Distance between Two Integers in Java== | ||
<syntaxhighlight lang='java'> | |||
public static int hammingDistance(int i1, int i2) { | |||
int differences = 0; | |||
int xor = i1 ^ i2; | |||
while(xor > 0) { | |||
differences += xor & 1; | |||
xor >>= 1; | |||
} | |||
return differences; | |||
} | |||
</syntaxhighlight> | |||
Also see: {{Internal|Java_Language#Integer_Bitwise_XOR_.5E|Integer Bitwise XOR <tt>^</tt> in Java}} |
Latest revision as of 21:52, 24 October 2021
External
Internal
Overview
The Hamming distance between two string of equal length is the number of positions at which the corresponding symbols are different. In other words, it measures the minimum number of substitutions required to change on string into the other, or the minimum number of errors that could have transformed one string into the other.
Implementations
Hamming Distance between Two Integers in Java
public static int hammingDistance(int i1, int i2) {
int differences = 0;
int xor = i1 ^ i2;
while(xor > 0) {
differences += xor & 1;
xor >>= 1;
}
return differences;
}
Also see: