偷渡同樣的題目
速度看起來差不多?!
#if 1
int hammingWeight(uint32_t n) {
int ret=0;
while(n>0)
{
ret += n&1;
n=n>>1;
}
return ret;
}
#else
int hammingWeight(uint32_t n) {
int ret=0;
while(n)
{
ret++;
n&=(n-1);
}
return ret;
}
#endif
[20260711]更一下
好像沒什麼不一樣?
int hammingWeight(int n) {
int ret=0;
while (n>0){
ret+= (n& 0x1);
n>>=1;
}
return ret;
}
沒有留言:
張貼留言