牛客网-《剑指offer》-二进制中1的个数
题目:http://www.nowcoder.com/practice/8ee967e43c2c4ec193b040ea7fbb10b8
C++
负数需要特殊处理,因为负数右移会补1(符号位)
1 class Solution { 2 public: 3 int NumberOf1(int n) { 4 unsigned int v = n; 5 int sum = 0; 6 while (v) { 7 sum += v&1; 8 v >>= 1; 9 } 10 return sum; 11 } 12 };
找我内推: 字节跳动各种岗位
作者:
ZH奶酪(张贺)
邮箱:
cheesezh@qq.com
出处:
http://www.cnblogs.com/CheeseZH/
*
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

浙公网安备 33010602011771号