码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode_Reverse Bits_easy

时间:2015-06-02 22:04:40      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:leetcode   c++   bit manipulation   

Reverse bits of a given 32 bits unsigned integer.

For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), return 964176192 (represented in binary as00111001011110000010100101000000).

方法:直接进行位操作,从末尾开始,一个一个移入return的变量里边,每次对return的变量进行左移位操作。

class Solution {
public:
    uint32_t reverseBits(uint32_t n) {
        uint32_t res=0;
        int i=0;
        while(i++<32)
        {
            res=res<<1;
            res+=n%2;
            if(n>0)
                n=n>>1;
        }
        return res;
    }
};


leetcode_Reverse Bits_easy

标签:leetcode   c++   bit manipulation   

原文地址:http://blog.csdn.net/u013861066/article/details/46334489

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!