C++ 反转一个二进制串

描述

一个32位有符号整数,用二进制编码来表示。现需要将该二进制编码按位反转,计算出反转后的值。

示例1

输入:

复制代码
1

返回值:

复制代码
-2147483648

说明:

复制代码

00000000 00000000 00000000 00000001

翻转后为

10000000 00000000 00000000 00000000

cpp 复制代码
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param n int整型 
     * @return int整型
     */
    int reverseBits(int n) {
        // write code here
        int res = 0; 

        for(int i = 0; i < 32; i++)
        {
            res <<= 1;
            res |= (n & 1);
            n >>= 1; 
        }

        return res;
    }
};
相关推荐
灵感__idea5 小时前
Hello 算法:贪心的世界
前端·javascript·算法
camellias_6 小时前
【无标题】
java·tomcat
咸鱼2.06 小时前
【java入门到放弃】需要背诵
java·开发语言
澈2077 小时前
深入浅出C++滑动窗口算法:原理、实现与实战应用详解
数据结构·c++·算法
A.A呐7 小时前
【C++第二十九章】IO流
开发语言·c++
椰猫子7 小时前
Java:异常(exception)
java·开发语言
ambition202427 小时前
从暴力搜索到理论最优:一道任务调度问题的完整算法演进历程
c语言·数据结构·c++·算法·贪心算法·深度优先
cmpxr_7 小时前
【C】原码和补码以及环形坐标取模算法
c语言·开发语言·算法
qiqsevenqiqiqiqi7 小时前
前缀和差分
算法·图论
代码旅人ing7 小时前
链表算法刷题指南
数据结构·算法·链表