任给1个十进制的数字,输出该数字转化为二进制后1的个数
1. 方法1
public static int Method(int number)
{
int i = 1;
while ((number & (number - 1)) != 0)
{
number = (number & (number - 1));
i++;
}
return i;
}
2. 方法2
public static int Method2(int number)
{
int i = 1;
while (number!=1)
{
if (number % 2 == 1)
{
i++;
number -= 1;
}
number = number/2;
}
return i;
}
本文介绍两种将十进制数字转换为二进制,并计算二进制中1的数量的方法。方法1通过位操作减少1的次数,方法2采用除2取余数的方式递归计算。

被折叠的 条评论
为什么被折叠?



