剑指offer 11:二进制中 1 的个数
题目描述
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
解题代码
法一:
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。public class Solution { public int NumberOf1(int n) { int cnt = 0; while(n != 0){ n &= (n - 1); cnt++; } return cnt; } }
法二:
public int NumberOf1(int n) { return Integer.bitCount(n); }

更多精彩