LeetCode 476 数字的补数[异或] HERODING的LeetCode之路

Posted HERODING23

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 476 数字的补数[异或] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。


解题思路:
求一个数的补数,其实就是将这个数与该数的二进制尾数相同但是所有位都是1的数异或,这样的结果刚好是该数的补数,代码如下:

class Solution {
public:
    int findComplement(int num) {
        int temp = 1;
        while(temp < num) {
            temp <<= 1;
            temp += 1;
        }
        return num ^ temp;
    }
};

以上是关于LeetCode 476 数字的补数[异或] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章

力扣(LeetCode)476. 数字的补数

leetcode每日打卡--476. 数字的补数

Leetcode刷题100天—476. 数字的补数—day70

Leetcode刷题100天—476. 数字的补数—day70

476-数字的补数

476. 数字的补数模拟