标签: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