LeetCode-190. Reverse Bits

来源:互联网 发布:目前淘宝卖什么最火 编辑:程序博客网 时间:2024/06/05 08:45

问题:https://leetcode.com/problems/reverse-bits/?tab=Description
Reverse bits of a given 32 bits unsigned integer.把二进制数翻转。
For example, given input 43261596
(represented in binary as 0000010100101000001111010011100),
return 964176192 (represented in binary as 00111001011110000010100101000000).
分析:先取得n的最后一位,再右移一位,将结果的res左移一位,与n最后一位与。
参考C++代码:

class Solution {public:    uint32_t reverseBits(uint32_t n) {        int res=0;        for(int i=0;i<32;i++){            int tem=n&1;            n=n>>1;            res=(res<<1) | tem;        }        return res;    }};
0 0