hammingDistance
Calculate the Hamming distance between two equal-length strings.
Usage
var hammingDistance = require( '@stdlib/string/base/distances/hamming' );
hammingDistance( s1, s2 )
Calculates the Hamming distance between two equal-length strings.
var dist = hammingDistance( 'frog', 'from' );
// returns 1
dist = hammingDistance( 'tooth', 'froth' );
// returns 2
dist = hammingDistance( 'cat', 'cot' );
// returns 1
dist = hammingDistance( '', '' );
// returns 0
dist = hammingDistance( '1638452297', '2311638451' );
// returns 10
Notes
- If the two strings differ in length, the Hamming distance is not defined. Consequently, when provided two input strings of unequal length, the function returns a sentinel value of
-1
. - As the function calculates the Hamming distance by comparing UTF-16 code units, the function should behave as expected for strings composed of most characters. However, the function is likely to not behave as expected if strings contain visual characters composed of multiple Unicode code points, such as certain mathematical symbols and grapheme clusters (e.g., emojis).
Examples
var hammingDistance = require( '@stdlib/string/base/distances/hamming' );
var dist = hammingDistance( 'algorithms', 'altruistic' );
// returns 7
dist = hammingDistance( 'elephant', 'Tashkent' );
// returns 6
dist = hammingDistance( 'javascript', 'typescript' );
// returns 4
dist = hammingDistance( 'hamming', 'ladybug' );
// returns 5