获取二进制(补码)中1位的数量

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lj6020382/article/details/82353073

问题一:获取二进制中1位的数量

       解题思路:

              方法一:获取二进制正数中1位的数量:右移法

              

              方法二:末尾1取反法,正数

              

              方法三:查表法

              

              方法四:(两两合并的思想)JDK自带补码字节统计工具,适用正数和负数

              

       注意事项:见代码

       参考博客:统计一个整数的二进制中1的个数的三种解法

问题二:获取二进制补码中1位的数量

       解题思路:

              方法一:两两合并的思想

              

              方法二:末尾1取反法

              

              方法三:左移法,尽量不要使用右移,因为有符号位

              

       注意事项:见代码

       参考博客:Integer.bitCount()理解

                         Integer.bitCount函数解释

       代码实现

              见我的github:Bitcount

猜你喜欢

转载自blog.csdn.net/lj6020382/article/details/82353073
今日推荐