文档章节

Codewar - Bit Counting

圣洁之子
 圣洁之子
发布于 2016/11/23 09:03
字数 116
阅读 11
收藏 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)); 
  }
}

 

© 著作权归作者所有

共有 人打赏支持
圣洁之子
粉丝 6
博文 306
码字总数 92734
作品 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
每天一个js小算法(日更 21天)

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

zz77zz
07/23
0
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

没有更多内容

加载失败,请刷新页面

加载更多

分布式框架spring-session实现session一致性使用问题

前言:项目中使用到spring-session来缓存用户信息,保证服务之间session一致性,但是获取session信息为什么不能再服务层获取? 一、spring-session实现session一致性方式 用户每一次请求都会...

WALK_MAN
39分钟前
3
0
C++ yield()与sleep_for()

C++11 标准库提供了yield()和sleep_for()两个方法。 (1)std::this_thread::yield(): 线程调用该方法时,主动让出CPU,并且不参与CPU的本次调度,从而让其他线程有机会运行。在后续的调度周...

yepanl
47分钟前
1
0
Java并发编程实战(chapter_3)(线程池ThreadPoolExecutor源码分析)

这个系列一直没再写,很多原因,中间经历了换工作,熟悉项目,熟悉新团队等等一系列的事情。并发课题对于Java来说是一个又重要又难的一大块,除非气定神闲、精力满满,否则我本身是不敢随便写...

心中的理想乡
57分钟前
19
0
shell学习之获取用户的输入命令read

在运行脚本的时候,命令行参数是可以传入参数,还有就是在脚本运行过程中需要用户输入参数,比如你想要在脚本运行时问个问题,并等待运行脚本的人来回答。bash shell为此提 供了read命令。 ...

woshixin
今天
1
0
区块链技术中的那些能商用的企业级应用

WEPOWER是一家立陶宛初创企业,旨在改变可再生电力项目的付费方式。WePower公司创始人Nick Martyniuk表示,政府统一收购价的存在推动了全球风能与太阳能市场的发展。因此,他的公司希望帮助那...

问题终结者
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部