计算汉明权重
程序员文章站
2022-07-12 11:59:09
...
要求:
写一个函数,以一个无符号整数为参数,返回其汉明权重。例如,‘11’的二进制表示为'00000000000000000000000000001011', 故函数应当返回3。
汉明权重:指一个字符串中非零字符的个数;对于二进制串,即其中‘1’的个数。
代码如下:
public static int hammingWeight(int n) {
String str = Integer.toBinaryString(n);
int tmp = 0;
char[] ss = str.toCharArray();
for(char s:ss){
if(1 == (s-'0')){
tmp++;
}
}
return tmp;
}
看到了另外一个更好的方法,学习了!
http://cwind.iteye.com/blog/2193686#comments
推荐阅读
-
荣耀赵明解释手机计算器10%问题:国外算小费惯用、相当人性化
-
百度权重怎么计算呢?
-
经典问题(c++/python)素数、杨辉三角(金字塔型)、统计单词数、简单计算器、密码安全程度、凯撒密码加密、汉诺塔 (python课设实验实例)-- biaobiao88
-
除奸臣保忠良的大汉明君,汉昭帝是个怎样的人?
-
【Python实践-3】汉诺塔问题递归求解(打印移动步骤及计算移动步数)
-
“狡兔死,走狗烹“ 为何清朝没有像明汉那样杀开国功臣?
-
揭秘汉元帝刘奭的所作所为 他到底是昏君还是明君
-
leadcode的Hot100系列--461. 汉明距离
-
php简单计算权重的方法示例【适合抽奖类应用】
-
基础类SEO秘诀:浅析网站权重计算因子