2.为了方便将这个二进制数的打印,本题将String字符串转为StringBuffer字符串sb,调用sb的reverse()方法即可打印出这个二进制数
3.reverse()方法实现的是字符串反转,至于为何要实现反转,具体查阅除二取余法
比如:输入14,s中存放的依次为0111,调用b.reverse().toString()即可打印出1110
时间复杂度O(n),额外空间复杂度O(1)
import java.util.*;
public class Solution {
/**
-
计算int对应二进制中1的个数
-
@param n int整型 数字
-
@return int整型
*/
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int n=in.nextInt();
int result=countBit (n);
System.out.println(result);
}
public static int countBit (int n) {
// write code here
String s=“”;
//除二取余法
while(n&g