[剑指offer]面试题10:二进制中1的个数
2017-09-30 14:21
302 查看
题目描述
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
使用位运算&
n&(n-1) 运算一次,就会将n二进制最右侧的1消掉
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
使用位运算&
n&(n-1) 运算一次,就会将n二进制最右侧的1消掉
class Solution { public: int NumberOf1(int n) { int count = 0; while(n){ n &= n - 1; ++count; } return count; } };
相关文章推荐
- 剑指offer-面试题10:二进制中1的个数
- 剑指offer-面试题10-二进制中1的个数
- 【面试题】剑指Offer-10-统计二进制中1的个数
- 剑指offer-chapter2-面试题10-二进制中1的个数(java)
- 剑指offer_面试题10_二进制中1的个数(位运算)
- 剑指offer面试题10-二进制中1的个数
- 【剑指Offer学习】【面试题10 :二进制中1 的个数】
- 剑指offer之面试题10:二进制中1的个数
- 剑指offer-面试题10-二进制中1的个数
- 剑指Offer:面试题10 二进制中1的个数
- 剑指Offer_面试题10_二进制中1的个数
- 九度剑指Offer面试题10:二进制中1的个数(Java题解)
- 剑指Offer面试题10(Java版):二进制中的1的个数
- 剑指Offer----面试题10:二进制中1的个数
- 【练习笔记】剑指offer-面试题10 :二进制中1的个数
- 【剑指offer】面试题10: 二进制中1的个数
- 剑指offer 面试题10 二进制中1的个数
- 剑指offer——面试题10:二进制中1的个数
- 剑指offer_面试题10_二进制中1的个数(位运算)
- 剑指offer-面试题10-二进制中1的个数