
考官何老师为您分享以下优质知识
要判断二进制位是否为1,可以使用位运算中的按位与(&)操作。以下是具体方法及代码示例:
一、核心方法:按位与运算
将目标数右移指定位数后与1进行按位与运算,若结果为1则该位为1。
```java
public static boolean isBitOne(int num, int i) {
return (num >
>
(i - 1)) & 1;
}
```
左移法
将1左移指定位数后与目标数进行按位与运算,若结果为1则该位为1。
```java
public static boolean isBitOne(int num, int i) {
return (num & (1 >
= 1;
}
return count;
}
```
该算法时间复杂度为O(k),其中k为二进制中1的个数,效率优于逐位检查。