https://leetcode.com/problems/reverse-bits/
Reverse bits of a given 32 bits unsigned integer.
Example:
Input: 43261596 Output: 964176192 Explanation: 43261596 represented in binary as 00000010100101000001111010011100, return 964176192 represented in binary as 00111001011110000010100101000000.
代码:
class Solution {
public:
uint32_t reverseBits(uint32_t n) {
vector<int> ans;
while(n) {
ans.push_back(n % 2);
n /= 2;
}
for(int i = ans.size(); i < 32; i ++)
ans.push_back(0);
int sum = 0;
for(int i = 0; i <32; i ++)
sum += ans[i] * (1 <<(31 - i));
return sum;
}
};
Easy 杀手