求一个整数包含1的个数的代码

转载 2012年03月22日 13:08:26
无意间看到的一个求一个整数包含1个数的代码,Very简洁,开始不相信这样能够实现。测试一圈果然是这样的。
不错,现在用不到,也不知道会在什么情况下用到这样的东西。先搜集了,有人弄出来就表示有人在用,以后遇到就可以抄一把了。
int BitCount(unsigned int n)
{
	int c = 0;
	for (c; n;++c)
	{
		n &= (n - 1);
	}
	return c;
}

求一个整数中二进制1的个数

题目:求一个整数二进制表示1的个数   第一版: 思路:如果一个整数与1做与运算,结果为1,那么该整数最右边一位是1,否则是0; int NumberOf1(int n) { int c...
  • djb100316878
  • djb100316878
  • 2014年12月18日 08:55
  • 2745

快速求二进制中1个数

先放代码 public static int countNum(int n) { int count = 0; while (n != 0) { ...
  • a62321780
  • a62321780
  • 2016年09月19日 22:23
  • 702

位运算求解一个整数的二进制中1的个数

法一:
  • cgl1079743846
  • cgl1079743846
  • 2014年05月27日 15:31
  • 1879

Java实现求一个整数的二进制数中1的个数

这题还是笔试的时候遇到的,当时没有想太多,直接用了最为直接的移位相加的方法,虽然可以得出结果,但是程序效率低。 后来发现使用n=n&(n-1)的方法,效率会更高,先上代码。 public stat...
  • wangshuang1631
  • wangshuang1631
  • 2016年10月13日 20:04
  • 2689

求1到N的所有整数中“1”的个数

题意:给定一个十进制的整数N,求出1到N
  • wang11234514
  • wang11234514
  • 2014年06月30日 22:17
  • 1744

牛客网 求1到n 整数中1的个数

import java.util.Scanner; /** * 当计算右数第i位包含的X的个数时 * * 1.取第i位左边(高位)的数字,乘以10^i-1,得到基础值 a * 2.取第i位数...
  • u014142287
  • u014142287
  • 2016年09月02日 10:45
  • 444

Java求一个整数的二进制中1的个数

常规解法。 思路:将整数n与1进行与运算,当整数n最低位是1时,则结果非零,否则结果为0。 然后将1左移一位,继续与n进行与运算,当次低位是1时,结果非零,否则结果为0。 ...
  • qq_21150865
  • qq_21150865
  • 2017年02月25日 17:10
  • 1930

求整数N的二进制表示中1的个数

编写一个递归方法,返回N的二进制表示中1的个数
  • wyg1065395142
  • wyg1065395142
  • 2016年05月19日 21:57
  • 177

给定一个整数,求其二进制数中1的个数

不是最优代码,不过至少算出来了,呵呵 1. type(num) == type(1),判断num是不是整数,type(1)是整数int,type(1.2)是float,type('a')是字符串,t...
  • melody_1314
  • melody_1314
  • 2012年02月22日 14:10
  • 385

求一个正整数转成二进制后,有多少个1?

之前,看到一个判断一个正数是否是2的乘方(比如16是2的4次方)。要求性能尽可能高。 思路一:从int temp = 1开始,每次循环比较是否与number相等,不相等就让temp增大一倍(tem...
  • xjh093
  • xjh093
  • 2016年11月24日 09:43
  • 937
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:求一个整数包含1的个数的代码
举报原因:
原因补充:

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