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