题解 | #求最大连续bit数#
求最大连续bit数
http://www.nowcoder.com/practice/4b1658fd8ffb4217bc3b7e85a38cfaf2
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num = in.nextInt();
int max = 0;// 记录二进制最大连续1数
int count = 0;// 记录二进制当前连续1数量
while(num>0){
// 计算&运算结果为1的个数
if((num&1) == 1){
count++;// 计数
} else {
count = 0;// 重置计数为0
}
num = num>>1;// 每次计算后将数据右移一位
max = Math.max(max,count);
}
System.out.print(max);
}
}