public class Test {
public static void main(String[] args) {
int count=0;int m=17;
while(m!=0)
{
m=m&(m-1);
count++;
}
System.out.println(count);
}
}
这里面有一个就是求与运算,0&0=0;1&0=0;1&1=1;一个数减一之后,,再与自己求与的话结果只会减少一个一,这就是本算法的精华。
这里面有一个就是求与运算,0&0=0;1&0=0;1&1=1;一个数减一之后,,再与自己求与的话结果只会减少一个一,这就是本算法的精华。