476. Number Complement
来源:互联网 发布:爱古兰中阿文软件下载 编辑:程序博客网 时间:2024/06/13 19:07
Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.
Note:
- The given integer is guaranteed to fit within the range of a 32-bit signed integer.
- You could assume no leading zero bit in the integer’s binary representation.
Example 1:
Input: 5Output: 2Explanation: The binary representation of 5 is 101 (no leading zero bits), and its complement is 010. So you need to output 2.
Example 2:
Input: 1Output: 0Explanation: The binary representation of 1 is 1 (no leading zero bits), and its complement is 0. So you need to output 0.解析: 发现与位数相同的全1求异或能得到答案,下面怎么求得位数相同的全1,发现不好求,先求全0再取反,求全0的方法是对全1和原数相与并左移直到得到0为止
代码:
class Solution {public: int findComplement(int num) { int ans=0; unsigned int mask=~0; while (num&mask) mask<<=1; mask=~mask; return num^mask; }};
0 0
- LeetCode 476. Number Complement
- leetcode 476. Number Complement
- 【Leetcode】476. Number Complement
- 【Leetcode】476. Number Complement
- 476. Number Complement*
- LeetCode 476. Number Complement
- LeetCode 476. Number Complement
- LeetCode--476. Number Complement
- LeetCode 476. Number Complement
- 476. Number Complement
- 476. Number Complement [LeetCode]
- 476. Number Complement
- [LeetCode]476.Number Complement
- 476. Number Complement
- 【LeetCode】 476. Number Complement
- LeetCode 476. Number Complement
- 476. Number Complement
- 476. Number Complement (E)
- Ubuntu 16.04 解决虚拟机摄像头无法使用问题
- 图文内容在手机中显示,自动适应问题
- Python 代码放在函数中运行比放在全局中运行快
- 第七届蓝桥杯_方格填数_简单搜索
- error LNK1104: 无法打开文件“***.lib“
- 476. Number Complement
- 使用SDAutoLayout实现控件根据内容进行宽度自适应和高度自适应
- ThinkPHP中的大写方法
- 命令模式
- 分类算法:Logistic回归
- C# NX二次开发_一键开关所有图层
- 蓝桥杯JAVA语言B组_大衍数列
- JZOJ 5050. 【GDOI2017模拟一试4.11】颜色树
- Latex 安装步骤说明