【leetcode】476. Number Complement

problem

476. Number Complement

solution1:

class Solution {
public:
    int findComplement(int num) {
        //正数的补数是对应二进制各位翻转,且从非零高位开始。
        bool start = false;
        for(int i=31; i>=0; i--)//err.
        {
            if(num & (1<<i)) start = true;
            if(start) num ^= (1<<i);
        }
        return num;
    }
};

 

 

 

参考

1. Leetcode_476. Number Complement;

2. GrandYang;

posted on 2019-03-24 19:58  鹅要长大  阅读(134)  评论(0编辑  收藏  举报

导航