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;
    }
};
相关推荐
wuqingshun31415911 小时前
RabbitMQ 中无法路由的消息会去到哪里?
java
thefool11226612 小时前
Java 方法重载
java
这不小天嘛18 小时前
JAVA八股——J集合篇
java·开发语言
ysu_031419 小时前
05 | 持久化撤销提示非核心功能
算法·游戏程序
浮沉98720 小时前
二分查找算法概述&通用模板
算法
Keven_1121 小时前
算法札记:SPFA判负环算法的证明
算法
什巳21 小时前
JAVA练习278- 和为 K 的子数组
java·学习·算法·leetcode
豆瓣鸡21 小时前
RocketMQ学习-Spring Boot消息实践
java·spring boot·rocketmq