标签:leetcode
题目描述:
Reverse bits of a given 32 bits unsigned integer.
For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), return 964176192 (represented in binary as 00111001011110000010100101000000).
代码:class Solution
{
public:
uint32_t reverseBits(uint32_t n)
{
int bits[32];
for(int i = 31;i >= 0;i--)
{
if(n & 1)
bits[i] = 1;
else
bits[i] = 0;
n = n >> 1;
}
uint32_t result = 0;
for(int i = 31;i >= 0;i--)
{
result = result + bits[i];
if(i == 0)
break;
result = result << 1;
}
return result;
}
};
标签:leetcode
原文地址:http://blog.csdn.net/yao_wust/article/details/45722169