ระยะทางแฮมมิ่ง (Hamming Distance)
ระยะทางแฮมมิ่งระหว่างสตริงสองตัวที่มีความยาวเท่ากัน คือจำนวนตำแหน่งที่สตริงทั้งสองแตกต่างกัน
กล่าวอีกนัยหนึ่ง คือการวัดจำนวนการเปลี่ยนแปลงขั้นต่ำที่ต้องทำเพื่อเปลี่ยนสตริงหนึ่งให้กลายเป็นอีกสตริงหนึ่ง ระยะทางแฮมมิ่งมักวัดกับสตริงที่มีความยาวเท่ากัน
เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงสองตัว str1 และ str2 ที่มีความยาวเท่ากัน ฟังก์ชันต้องคำนวณและคืนค่าระยะทางแฮมมิ่งระหว่างสตริงทั้งสอง
ตัวอย่างโค้ด
const str1 = 'Hello World';
const str2 = 'Heeyy World';
const findHammingDistance = (str1 = '', str2 = '') => {
let distance = 0;
if(str1.length === str2.length) {
for (let i = 0; i < str1.length; i++) {
if (str1[i].toLowerCase() != str2[i].toLowerCase()) {
distance++;
}
}
return distance;
}
return 0;
};
console.log(findHammingDistance(str1, str2));
ผลลัพธ์
3