<#meta itemprop="name" content="Neo's Blog"> 二进制表示中1的个数 Posted on 2021-02-24 Edited on 2022-03-01 In 数据结构与算法 Valine: 输入一个32位整数,输出该数二进制表示中1的个数。 注意: 负数在计算机中用其绝对值的补码来表示。样例1输入:9输出:2解释:9的二进制表示是1001,一共有2个1。样例2输入:-2输出:31解释:-2在计算机里会被表示成11111111111111111111111111111110,一共有31个1。 1234567891011class Solution {public: int NumberOf1(int n) { int c = 0; while (n) { n = n & (n - 1); c++; } return c; }}; Recommended Posts 常见系统设计题系列-源码编译顺序 常见系统设计题系列-大文件整数找中位数 吴伯凡每周商业评论 职场晋升方法论 你的支持是我坚持的最大动力! Donate WeChat Pay Alipay