算法-Java计算int二进制中的1的数量(Java面试题及答案)
发布时间
阅读量:
阅读量
【为便于输出该二进制数值,本题将String字符串转换为StringBuffer对象sb,通过调用sb的reverse()方法即可实现二进制数的逆序输出。
3.reverse()方法的功能是实现字符串的逆序排列,至于为何需要进行反转操作,具体原因可参考除二取余法的相关内容。
例如:当输入数值为14时,s中依次存储的是0111,通过调用b.reverse().toString()方法即可得到1110的输出结果。
该算法的时间复杂度为O(n),而额外的空间复杂度则为O(1)
import java.util.*;
public class Solution {
/**
计算整型数值对应的二进制表示中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) {
// writ
全部评论 (0)
还没有任何评论哟~
