剑指Offer(十一):二进制中1的个数

  • A+
所属分类:剑指Offer
摘要

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

剑指Offer(十一):二进制中1的个数

一、前言

本系列文章为《剑指Offer》刷题笔记。

刷题平台:牛客网

书籍下载:共享资源

二、题目

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

1、思路

把一个整数减去1,再和原整数做与运算,会把改整数最右边一个1变成0。那么一个整数的二进制表示中有多少个1,就可以进行多次这样的操作。

2、代码

C++:

Jack Cui

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: