博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
461. Hamming Distance【数学|位运算】
阅读量:5127 次
发布时间:2019-06-13

本文共 673 字,大约阅读时间需要 2 分钟。

2017/3/14 15:23:55


The  between two integers is the number of positions at which the corresponding bits are different.

Given two integers x and y, calculate the Hamming distance.

 

题目要求:求两个数字二进制位中同一位置不同bit的个数。

解法1  Java    利用1的移位依次匹配是否对应位为1,统计为1的个数。

 

public class Solution {    public int hammingDistance(int x, int y) {        x ^= y;    	int count = 0;    	for ( int i=0;i<32;i++ )    		count = (1<
 

解法2 Java   利用 a &= a-1 依次去掉最后一个1,统计循环次数。

public class Solution {    public int hammingDistance(int x, int y) {        x ^= y;    	int count = 0;    	while( x != 0  ){    		x &= x - 1;    		count++;    	}    	return count;    }}

  

 

转载于:https://www.cnblogs.com/flyfatty/p/6624801.html

你可能感兴趣的文章
poj 1655 Balancing Act 树的重心
查看>>
CSS文字两端对齐
查看>>
解决listview适应scrollview的问题
查看>>
Spring MVC 注解
查看>>
安装oracle11g学习版遇到的几个问题
查看>>
投資是壹場修行
查看>>
spyder里的"查找文件里的特定字符串"非常方便
查看>>
Web缓存
查看>>
Python练习题 005:三个数字由大到小排序输出
查看>>
【转】Js正则表达式
查看>>
(第十二周)团队项目18
查看>>
计算机组成原理之流水线处理器
查看>>
操作系统-死锁(重要)
查看>>
UUID随机字符串
查看>>
算法提高 P0102
查看>>
Golang 中的坑 一
查看>>
2.servlet
查看>>
传感器数据的拟合
查看>>
异或链表(XOR linked list)
查看>>
利用etcd及confd实现配置自动管理
查看>>