剑指offer-二进制中1的个数
Posted MoonBeautiful
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer-二进制中1的个数相关的知识,希望对你有一定的参考价值。
题目描述
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
题目链接:
关键点:
记住这几个方法。^ ^
1 public class Solution { 2 public int NumberOf1(int n) { 3 //每次消掉二进制上最低位的1 4 int count =0 ; 5 while(n != 0){ 6 n &=n-1; 7 count++; 8 } 9 return count; 10 //判断二进制每个位置上是不是1 11 /* 12 int count = 0; 13 int flag = 1; 14 while(flag != 0){ 15 if((n&flag)== flag){ 16 count++; 17 } 18 flag<<=1; 19 } 20 return count; 21 */ 22 } 23 }
以上是关于剑指offer-二进制中1的个数的主要内容,如果未能解决你的问题,请参考以下文章