输入一个无符号整数,求按位逆向之后的结果。位运算,每次取一位加入到结果中,并左移,如果取到的数是1,结果加一
class Solution {
public:
uint32_t reverseBits(uint32_t n) {
int ans=0;
for(int i=1;i<=32;i++){
ans<<=1;
if(n&1) ans++;
n>>=1;
}
return ans;//这里ans设的是int,不过返回值是uint型,会自动转换
}
};