二进制中1的个数
题目
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
分析
把一个整数减去1,再和原整数做与运算,会把该整数最右边一个1变成0。
代码
1 public int NumberOf1(int n){ 2 int count = 0; 3 while(n!=0){ 4 n = n&(n-1); 5 count++; 6 } 7 return count; 8 }
posted on 2017-06-06 10:01 一个不会coding的girl 阅读(119) 评论(0) 编辑 收藏 举报