思路:将ans每次左移一位,移位时与n对应位相与,从而确定ans本次左移的位最终是0还是1,为保证n的位与ans对应,每次也要将n右移一位;
代码:
uint32_t reverseBits(uint32_t n) {
uint32_t ans=0;
int i=32;
while(i--)
{
ans<<=1;
ans+=n&1;
n>>=1;
}
return ans;
}