leetcode 476 Number Complement C++
2017-02-15 23:26
447 查看
这道题就是靠位操作,按理说只要返回原来的反就可以了,但是前边的0要过滤掉,所以,要想办法屏蔽前边的0,。然后后边用全部为1的掩码与一下原来的数的反即可。
int findComplement(int num) {
unsigned int mask = ~0;
while(num&mask) mask <<= 1;
return ~mask & ~num;
}
我参考了高票答案,确实牛逼啊。
int findComplement(int num) {
unsigned int mask = ~0;
while(num&mask) mask <<= 1;
return ~mask & ~num;
}
我参考了高票答案,确实牛逼啊。
相关文章推荐
- 【LeetCode】476 Number Complement
- LeetCode 476 Number Complement
- LeetCode 476 Number Complement(位运算)
- leetcode-476- Number Complement
- LeetCode-476 Number Complement
- LeetCode 476 Number Complement 补数
- 刷题的日常[Leetcode]——461)Hamming Distance and 476)Number complement
- leetcode--476--Number Complement(我的解法)
- LeetCode(476): Number Complement
- leetcode 476 Number Complement
- LeetCode_476-Number Complement
- LeetCode- 476 Number Complement(easy)
- leetcode 476 Number Complement
- leetcode 263 Ugly Number C++
- LeetCode 452. Minimum Number of Arrows to Burst Balloons 题解(C++)
- leetcode之137. Single Number II(C++解法 哈希表计数)
- 【LeetCode-414】Third Maximum Number(C++)
- leetcode_[python/C++] 179. Largest Number(数字组合成最大数)
- leetcode_c++:Letter Combinations of a Phone Number(017)
- leetcode 202 Happy Number C++