输出该数二进制表示中1的个数
来源:互联网 发布:网络教育官网 编辑:程序博客网 时间:2024/06/05 15:34
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
class Solution {
public:
int NumberOf1(int n) {
// 2017-6-18 用位不太理解这种做法
int cnt=0;
while(n!=0)
{
n=n&(n-1);
cnt++;
}
return cnt;
}
};
第二种解法:
int BitCount4(unsigned int n) { n = (n &0x55555555) + ((n >>1) &0x55555555) ; n = (n &0x33333333) + ((n >>2) &0x33333333) ; n = (n &0x0f0f0f0f) + ((n >>4) &0x0f0f0f0f) ; n = (n &0x00ff00ff) + ((n >>8) &0x00ff00ff) ; n = (n &0x0000ffff) + ((n >>16) &0x0000ffff) ; return n ; }
阅读全文
0 0
- 输出该数二进制表示中1的个数
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- Java实现输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 10.输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- java实现输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
- 【位操作】输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示
- 剑指offer 面试题55 字符流中第一个不重复的字符
- linux内核编译相关(TK1)
- 兰顿蚂蚁(模拟)-蓝桥杯
- java中print printf println
- [实验]虚拟实验环境中创建内网yum仓库
- 输出该数二进制表示中1的个数
- Codeforces 797E Array Queries
- Linux之shell基础
- 561. Array Partition I
- UVa 1001 Say Cheese
- PHP文件下载时乱码解决
- CentOS6.9+Mysql5.7.18源码安装
- Liunx进程间IPC通信—消息队列
- 二叉树的链表实现