首页 > 其他 > 详细

CodeWar----求正整数二进制表示中1的个数

时间:2019-03-21 00:52:10      阅读:293      评论:0      收藏:0      [点我收藏+]

Codewars


    Write a function that takes an integer as input, and returns the number of bits that are equal to one in the binary representation of that number. You can guarantee that input is non-negative.
    Example: The binary representation of 1234 is 10011010010, so the function should return 5 in this case
编写一个以整数作为输入的函数,并返回该数字的二进制表示中等于1的位数。您可以保证输入是非负的。

示例:1234is 的二进制表示10011010010,因此在这种情况下函数应该返回5

我的代码
public class BitCounting {
    public static int countBits(int n){
        // Show me the code!
        int count = 0;
        while(n != 0){
            if((n & 1) == 1){
                count++;
            }
            n = n>>>1;
        }
        return count;
  }
}

最佳代码
public class BitCounting {
     public static int countBits(int n){
       return Integer.bitCount(n);
     }  
   }

总结
对Java中已实现的功能及其不熟悉

CodeWar----求正整数二进制表示中1的个数

原文:https://www.cnblogs.com/luo-bo/p/10568990.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!