力扣每日一题2275
题目描述:
按位与 解释
参加运算的两个数,按二进制位进行“与”运算。
运算规则:只有两个数的二进制同时为1,结果才为1,否则为0。(负数按补码形式参加按位与运算)
即 0 & 0= 0 ,0 & 1= 0,1 & 0= 0, 1 & 1= 1。
例:3 &5 即 00000011 & 00000101 = 00000001 ,所以 3 & 5的值为1。
原文链接:https://blog.csdn.net/wan_ide/article/details/81108941
解析:根据官解提示2,问题转为找到在给定整数数组中所有数字的二进制表示下,拥有最多1的位的位置上1的数量。
代码:
package January; |
注:在Java中,整数类型(如 int
)是可以进行按位运算的,
- 如果
x
的最低位是1,那么x & 1
的结果将是1。 - 如果
x
的最低位是0,那么x & 1
的结果将是0。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Awei的博客!
评论