Using std.algorithm.iteration to Calculate Hamming Distance

Samir samir at aol.com
Sun Jun 23 13:10:51 UTC 2019


D already has a function to calculate the Levenshtein 
distance[1].  I am trying to come up with a function to calculate 
the Hamming distance[2] between two strings, `a` and `b`.  So 
far, this seems to work:

foreach (i, j; zip(a, b)) {
     if (i != j)
         ++hammingDistance;
}

Is there a way to use any of the std.algorithm.iteration[3] 
algorithms such as `filter` or `map` to do this as well?

[1] 
https://dlang.org/phobos/std_algorithm_comparison.html#levenshteinDistance
[2] https://en.wikipedia.org/wiki/Hamming_distance
[3] https://dlang.org/phobos/std_algorithm_iteration.html


More information about the Digitalmars-d-learn mailing list