所有代码均通过G++编译器测试,仅为练手纪录。
//面试题10:二进制中1的个数
//题目:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。
// 例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2.
//面试题10:二进制中1的个数
//题目:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。
// 例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2.
int CountNumOfOne(int nValue)
{
int nCount = 0;
while (nValue)
{
++nCount;
nValue = (nValue-1) & nValue;
}
return nCount;
}
ZhaiPillary
2016-12-24
本文提供了一个用于计算整数二进制表示中1的数量的实用函数。通过不断将数值与自身减一后的结果进行按位与运算,直至数值为零,以此来统计1的个数。
2450

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



