461.汉明距离
题目
我的解答
算法一:
1.将输入的x,y进行异或操作为temp(C++:a^b);
2.统计temp中1的个数:temp和temp-1的二进制数逐位相与(C++:a&b),然后减一之后继续循环直至为0。
算法二:
1.将x和y的最后一位(C++:a&1)异或操作,并且统计其结果;
2.将x和y都右移一位(C++:a>>1),再次计算其异或操作的结果,直至两个数相等。
注:以上两个算法均有所参考
版权声明:本文为Somnambulist1原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。