美文网首页
颠倒二进制位

颠倒二进制位

作者: 小白学编程 | 来源:发表于2018-09-12 13:47 被阅读0次

颠倒给定的 32 位无符号整数的二进制位。

示例:

输入: 43261596
输出: 964176192
解释: 43261596 的二进制表示形式为 00000010100101000001111010011100 ,
返回 964176192,其二进制表示形式为 00111001011110000010100101000000 。

uint32_t reverseBits(uint32_t n) {
        int i=1;
        int c=31;
        uint32_t sum=0;
        while(c>=0){
            if((n&i)==0){
                sum+=0*pow(2,c);
            }else{
                sum+=1*pow(2,c);
            }
       
            i=(i<<1);
            c--;
        }
        return sum;
}

相关文章

网友评论

      本文标题:颠倒二进制位

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