美文网首页
190. Reverse Bits

190. Reverse Bits

作者: 衣介书生 | 来源:发表于2018-04-05 14:47 被阅读5次

    题目分析

    题目链接,登录 LeetCode 后可用
    这道题让我们将一个 32 位无符号整数的二进制比特位进行逆序操作。比如:

    4,100 => 001,程序返回 1
    6,110 => 011,程序返回 3
    

    这里我们用移位操作和或运算来解此题。其中右移 1 位就是除 2,左移一位就是乘 2。

    代码

    public class Solution {
        // you need treat n as an unsigned value
        public int reverseBits(int n) {
            int res = 0;
            // 题目要求是 32 位无符号整数
            for(int i = 0; i < 32; i++) {
                res = (res << 1) | (n & 1);
                n >>= 1;
            }
            return res;
        }
    }
    

    相关文章

      网友评论

          本文标题:190. Reverse Bits

          本文链接:https://www.haomeiwen.com/subject/onvmzxtx.html