Reverse Bits-位反转

来源:互联网 发布:58端口多少钱一个月 编辑:程序博客网 时间:2024/05/16 06:03
  1. 题目描述
  2. 知识点及思路
  3. 总结

一.题目描述
简述:求一个数的二进制并求反
二.知识点及思路
知识点:移位;与或运算
思路:①(n&temp)>>i保证每次将原位置位移动至最低位②temp<<1保证与指定位做运算操作③value<<1保证了最低位移动至最高位④ value=(value<<1)|((n&temp)>>i)相当于位求和运算
代码如下:

class Solution {public:    uint32_t reverseBits(uint32_t n)     {        uint32_t value = 0;        uint32_t temp=1;        for (uint32_t i = 0; i < 32; ++i)        {            value=(value<<1)|((n&temp)>>i);            temp=temp<<1;        }        return value;    }};

三.总结
I.移位操作细节需多积累II.让我们一同努力,明天会更好!

0 0
原创粉丝点击