二进制中1的个数

简介: 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 解析:如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后面还有0的话)。

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

解析:如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后面还有0的话)。其余所有位将不会受到影响。
举个例子:一个二进制数1100,从右边数起第三位是处于最右边的一个1。减去1后,第三位变成0,它后面的两位0变成了1,而前面的1保持不变,因此得到的结果是1011.我们发现减1的结果是把最右边的一个1开始的所有位都取反了。这个时候如果我们再把原来的整数和减去1之后的结果做与运算,从原来整数最右边一个1那一位开始所有位都会变成0。如1100&1011=1000.也就是说,把一个整数减去1,再和原整数做与运算,会把该整数最右边一个1变成0.那么一个整数的二进制有多少个1,就可以进行多少次这样的操作。

 

public int searchNumberOne(int n){
    int count = 0;
    while(n!=0){
        count++;
        n = n & (n -1);
    }
       return count;
    }
}

这么变态。。。这都能想到。。

目录
相关文章
|
算法 安全 数据挖掘
解锁编程之门:数论在算法与加密中的实用应用
解锁编程之门:数论在算法与加密中的实用应用
阿里云香港主机要备案吗-阿里云香港服务器要备案吗-阿里云香港服务器主机价格
阿里云香港服务器需要备案吗? 阿里云香港服务器及主机不需要备案。阿里云香港及阿里云国外节点都不需要备案。 阿里云香港服务器和阿里云香港主机的区别: 阿里云服务器,就相当于一台网上电脑,和我们操作本地电脑是一样的。
17290 0
|
前端开发 JavaScript 程序员
Tailwind 生成的 CSS文件竟然有 3.7 Mb 这么巨大!这还能用?
Tailwind 是最近国外大火的 Utility CSS 框架,形态上有点类似以前的 Bootstrap,潮流是一种轮回。 用它来写一个卡片,大概是这样的体验,只用到了工具 class,而不用写任何额外的样式:
|
存储 SQL 关系型数据库
47 张图带你 MySQL 进阶!!!(三)
主要介绍了基本的 SQL 命令、数据类型和函数,在具备以上知识后,你就可以进行 MySQL 的开发工作了,但是如果要成为一个合格的开发人员,你还要具备一些更高级的技能,下面我们就来探讨一下 MySQL 都需要哪些高级的技能
126 0
47 张图带你 MySQL 进阶!!!(三)
|
边缘计算
Leetcode --- 岛屿问题(DFS求解)
Leetcode --- 岛屿问题(DFS求解)
Leetcode --- 岛屿问题(DFS求解)
|
存储 人工智能 安全
Git: 常用命令
Git: 常用命令
Git: 常用命令
|
安全 关系型数据库 MySQL
Linux安装MySQL
Linux安装MySQL
814 0
Linux安装MySQL
【MATLAB】基本绘图 ( 修改对象属性 | 修改坐标轴属性 | 修改坐标轴范围 | 修改文字大小 | 修改刻度 | 修改线属性 )(二)
【MATLAB】基本绘图 ( 修改对象属性 | 修改坐标轴属性 | 修改坐标轴范围 | 修改文字大小 | 修改刻度 | 修改线属性 )(二)
525 0
【MATLAB】基本绘图 ( 修改对象属性 | 修改坐标轴属性 | 修改坐标轴范围 | 修改文字大小 | 修改刻度 | 修改线属性 )(二)
|
SQL 存储 关系型数据库
delete、truncate、drop,千万别用错了。。
MySQL删除数据的方式都有哪些? 咱们常用的三种删除方式:通过 delete、truncate、drop 关键字进行删除;这三种都可以用来删除数据,但场景不同。 一、从执行速度上来说 drop > truncate >> DELETE
262 0
delete、truncate、drop,千万别用错了。。
|
Web App开发 负载均衡
新功能:阿里云负载均衡SLB支持HTTP访问强制跳转HTTPS
很高兴的告诉大家,阿里云负载均衡SLB已经在澳大利亚(悉尼)、日本(东京)、阿联酋(迪拜)、美国 (弗吉尼亚)、美国(硅谷)、马来西亚(吉隆坡)、德国(法兰克福)、新加坡、印度尼西亚(雅加达)上述地域,支持HTTP访问强制跳转HTTPS功能。
16750 1

热门文章

最新文章