How to find hamming distance (number of bits in the same position that differs in two numbers) in C#

1 Answer

0 votes
using System;

internal class Program
{
	private static int hamming_distance(int num1, int num2) {
		int xr = num1 ^ num2;
		int result = 0;

		while (xr != 0) {
			result += xr & 1;
			xr = xr >> 1;
		}

		return result;
	}

	public static void Main(string[] args)
	{
		int num1 = 9; // 1001
		int num2 = 14; // 1110

		Console.Write(hamming_distance(num1, num2));
	}
}




/*
run:
 
3
 
*/

 



answered Feb 5, 2024 by avibootz
...