文档章节

Codewar - Bit Counting

圣洁之子
 圣洁之子
发布于 2016/11/23 09:03
字数 116
阅读 16
收藏 0

Write a function that takes an (unsigned) integer as input, and returns the number of bits that are equal to one in the binary representation of that number.

Example: The binary representation of 1234 is 10011010010, so the function should return 5 in this case.

package poj;
public class BitCounting {

	public static int countBits(int n){
		String binaryStr = Integer.toBinaryString(n);
		int count = 0;
		for(int i=0; i<binaryStr.length(); ++i){
			if(binaryStr.charAt(i) == '1'){
				count++;
			}
		}
		return count;
	}
}
package poj;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import org.junit.runners.JUnit4;


public class BitCountingTest {
  @Test
  public void testGame() {
    assertEquals(5, BitCounting.countBits(1234)); 
    assertEquals(1, BitCounting.countBits(4)); 
    assertEquals(3, BitCounting.countBits(7)); 
    assertEquals(2, BitCounting.countBits(9)); 
    assertEquals(2, BitCounting.countBits(10)); 
  }
}

 

© 著作权归作者所有

共有 人打赏支持
上一篇: POJ 1010
圣洁之子
粉丝 6
博文 330
码字总数 97588
作品 0
深圳
后端工程师
私信 提问
Codewar-006: A disguised sequence (I)

来源: https://www.codewars.com/kata/563f0c54a22b9345bf000053/train/java 参考: http://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#BigInteger(java.lang.String,%20i......

圣洁之子
2016/12/06
40
0
BitMap 的基本原理和实现

前言 文章是自己写了后先发到了公众号里,再转到了内部的KM。算是一个系列的学习笔记,一篇篇来。 本篇是大数据算法系列 第一篇《BitMap的原理和实现》,BitMap 的思想的和原理是很多算法的基...

大数据之路
2012/09/04
0
0
位运算技巧

Compute the sign of an integer int v; // we want to find the sign of vint sign; // the result goes here // CHAR_BIT is the number of bits per byte (normally 8).sign = -(v < 0); ......

-_-struggle
2016/11/10
9
0
No.14 【大数据算法】BitMap的原理和实现

0x00 前言 本篇是大数据算法系列 第一篇《BitMap的原理和实现》,BitMap 的思想的和原理是很多算法的基础,因此我们以BitMap开篇。 既然是说大数据算法,我们先尝试给大数据算法一个定义,或...

dantezhao
2017/10/09
0
0
每天一个js小算法(日更 21天)

今天写代码的时候 处理定时器相关代码的时候遇到一个很基本的算法 卡住了很久 很气 相当气 然后开始思考为什么自己这么傻? 为什么自己写不出来然后意象不到的焦虑感油然而生 我怎么连这么简...

zz77zz
2018/07/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

都996了,研发效能还是提不起来,关键在这里

研发效能的提升必须落实为团队需求、协作和工程技术等实践。接下来的几篇文章,我将结合不同BU的案例,介绍研发效能提升的具体实践。 本篇将从团队协作的实践开始,通过可视化端到端的价值流...

阿里云官方博客
33分钟前
3
0
CentOS开机自启SVN

安装好 svn 服务后,默认是没有随系统启动自动启动的, CentOS 7 的 /etc/rc.d/rc.local 是没有执行权限的, 系统建议创建 systemd service 启动服务 于是查看 systemd 里 svn 的配置文件 /l...

临江仙卜算子
36分钟前
1
0
redo和undo区别讨论

英文解释: 名词:两种流程,redo重做流程,undo撤销还原流程;或则是redo日志与undo段的简称 动词:redo即重做,undo即撤销还原。 翻译有时候为了简单,常把动词和名称混用。不同场景不同的...

突突突酱
47分钟前
1
0
shell实例100例《二》

11、题目要求 写一个脚本实现如下功能: 输入一个数字,然后运行对应的一个命令。 显示命令如下: cmd meau* 1 - date 2 - ls 3 - who 4 - pwd 当输入1时,会运行date, 输入2时运行ls, 以此类...

寰宇01
49分钟前
1
0
Angular在页面加载很慢的时候,会出现双花括号的问题

我们知道在应用的页面或者组件需要加载数据时,浏览器和angular渲染页面都需要消耗一定的时间。这里的间隔可能很小,甚至让人感觉不到区别;但也可能很长,这样会导致让我们的用户看到了没有...

孟飞阳
50分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部