Number of 1 Bits

Write a function that takes an unsigned integer and returns the number of ’1' bits it has (also known as the Hamming weight).

For example, the 32-bit integer ’11' has binary representation 00000000000000000000000000001011, so the function should return 3.

题目:求32bit二进制数中1的个数.

1.int转为32bit二进制数

2.toBinaryString然后,count

 

 1 public class Solution {
 2 // you need to treat n as an unsigned value
 3 public int hammingWeight(int n) {
 4 
 5 Integer num = new Integer(n);
 6 String s = num.toBinaryString(n);
 7 System.out.println(s);
 8 int count=0;
 9 for(int i =0;i<s.length();i++){
10 if(s.charAt(i)=='1'){
11 count++;
12 //    System.out.println(count);
13 }
14 }
15 
16 return count;
17 }
18 }

 

 

 

248ms.

 

posted @ 2015-08-06 09:28  codingcat  阅读(120)  评论(0编辑  收藏  举报