两个int数m和n的二进制表达式中有多少位不同?

原创 2016年08月29日 20:06:17


#intclude <stdio.h>

 int diff_count(int m,int n)

{

 int i=0;

 int count=0;

 for(i=0;i<32,i++)

{

 if(((m>>i)&1) != ((n>>i)&1))

 count ++;

}

return count;

}

     int main()

{

int m=15;

int n=10;

int ret;

ret=diff_count(m,n);

print("%d\n",ret);

return 0;

}




结果 :2

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

1.编程实现: 两个int(32位)整数m和n的二进制表达中, 有多少个位(bit)不同? 输入例子: 1999 2299 输出例子:7

方法一: 算法思想:由于要找两个数对应不同比特位的个数,可以先将两个数按位异或,然后再统计异或后的数中的一的个数,而统计二进制中1的个数有三种方法;1.这个数循环按位 于比它小1的数,直到这个数为...

一个unsigned int 数的二进制表示中有多少个1

这是一道面试题可以用以下的一些方案。 第一种是很容易想到的采用循环的方式并且与1进行位与运算,具体代码如下。  1int 数的二进制表示中有多少个1?" title="求一个unsigned ...

求比正整数N大的最小正整数M,且M与N的二进制表示中有相同数目的1

一般最容易想到的方法就是先计算正整数N用二进制表示时1的个数count1,然后不停地计算N++用二进制表示时1的个数count2,直到碰到count1 == count2成立,代码如下: typed...

两个二进制中不同位的个数

今天在牛客网刷题,现在要写的这题(2015年小米暑期实习面试题)其实蛮简单的,可是因为自己编写的经验不够,所以用了比较蠢的法子,后来看到他人公布的解法觉得眼前一亮。所以要记下来。 题目要求: ...

LeetCode Median of Two Sorted Arrays 在两个已排列的数组中找出中位数。时间复杂度为O(log(min(N,M))

完成一道题,真的是好开心,虽然自己蠢蠢的,到了研究生还在弄这些基础的算法,才开始学去整理自己的知识。但是没关系,就算是要用几年的时间才能获得别人现在就拥有的知识能力,能就用几年的时间吧!题目:Ther...

查找介于n1与n2(0<n1<n2<32768)之间所有满足下列条件的整数: (1)该数的十进制表示中有且仅有两个相同的数字位; (2)该数是素数。

查找介于n1与n2(0到32768)之间所有满足下列条件的整数: (1)该数的十进制表示中有且仅有两个相同的数字位; (2)该数是素数。// author:yangyang //main.c #i...

输入整数m,n,判断需要改变二进制中多少位才能使其相等

之前有碰到过给我一个整数,统计其二进制中1的个数。说来忏愧,我开始是用递归调用除2取余,判断余数,如果是1,count++,否则,count不变。尽管是实现了功能,但是效率肯定是不高的,毕竟我还用了递...

有重复N个数,抽取M个不同数全排

用C++实现:有重复N个数,抽取M个不同数全排,输出所有可能组合。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)