LC-476 数字的补数

目标:

输入一个数字,输出它的二进制的反码代表的十进制数

 

思路:

一位一位计算输入数字的二进制码,然后累加该位的反码。

 

代码:

 1 class Solution {
 2 public:
 3     int findComplement(int num) {
 4         int result = 0;
 5         int count = 0;
 6         while (num != 0) {
 7             result += !(num % 2) << count++;
 8             num /= 2;
 9         }
10         return result;
11     }
12 };

 

posted @ 2018-11-06 23:34  leo_lee  阅读(92)  评论(0编辑  收藏  举报