pub fn hamming_distance_slice(a: &[u8], b: &[u8]) -> u32Expand description
Computes Hamming distance for arbitrary-length byte slices.
§Algorithm
- XOR each byte pair to find differing bits
- Count set bits using
count_ones() - Sum across all bytes
§Arguments
a- First byte sliceb- Second byte slice (must be same length asa)
§Returns
The number of differing bits
§Panics
Panics if slices have different lengths.
§Example
use edgevec::quantization::simd::portable::hamming_distance_slice;
let a = [0xAA; 32];
let b = [0x55; 32];
let distance = hamming_distance_slice(&a, &b);
assert_eq!(distance, 256); // All bits differ (32 * 8)