快速法求得二进制中1的个数
来源:互联网 发布:最新专业网络投资理财 编辑:程序博客网 时间:2024/06/05 10:50
快速法求得二进制中1的个数
这种方法速度较快,运算次数只与1的个数有关。原理是不断的清除n的二进制表示中最右边的1,同时累加计数器,直至n为0:
代码
C++:
#include <iostream>using namespace std;int bitcount(int x);int main(int argc, char *argv[]) { cout<<"请输入数字:"<<endl; int x; cin>>x; int y = bitcount(x); cout<<"二进制中1的个数为:"<<y<<endl;}int bitcount(int x){ int c=0; for(c = 0 ;x;++c){ x&=(x-1); } return c;}
0 0
- 快速法求得二进制中1的个数
- php实现求得一个数的二进制中1的个数
- 3行代码为何能求得二进制数中1比特的个数
- 快速统计二进制中1的个数
- 计算二进制数中1的个数的快速算法
- 快速统计二进制中1的个数(分析篇)
- 快速求二进制中1个数
- 快速计算整数的二进制表示法中1的个数
- 快速计算整数的二进制表示法中1的个数
- 快速计算整数的二进制表示法中1的个数
- 快速计算整数的二进制表示法中1的个数
- 快速判断整数二进制1的个数
- 二进制中1的个数
- 二进制中1的个数
- 二进制中1的个数
- 二进制中1的个数
- 二进制中1的个数
- 二进制中1的个数
- 表示数值的字符串
- Spring Boot——开发新一代Spring Java应用
- D版力控加密狗使用有感
- UVA 1349Optimal Bus Route Design(网络流)
- LeetCode 297. Serialize and Deserialize Binary Tree(二叉树的序列化和反序列化)
- 快速法求得二进制中1的个数
- FZU 2214 Knapsack problem【DP】【超大容量背包】
- Tomcat8开启APR运行模式(centos6.5)
- Python核心编程——快速入门
- strcpy源码
- Eclipse使用总结
- js的一些问题(一)
- 可扩展性设计之数据切分
- hibernate一对一双向外键关联