题意:

  提供一个无符号32位整型uint32_t变量n,返回其二进制形式的1的个数。

思路:

  考察二进制的特性,设有k个1,则复杂度为O(k)。考虑将当前的数n和n-1做按位与,就会将n的最后一个1去掉,重复这样的操作就可以统计出1的个数了。(2015年春季 小米实习生的笔试题之一)

 class Solution {
public:
int hammingWeight(uint32_t n) {
int cnt=;
while(n)
{
n&=n-;
cnt++;
}
return cnt;
}
};

AC代码

python3

 class Solution(object):
def hammingWeight(self, n):
"""
:type n: int
:rtype: int
"""
cnt=0
while n:
cnt+=1
n=n&(n-1)
return cnt

AC代码

最新文章

  1. SQL中char、varchar、nvarchar的区别
  2. POJ-2886 Who Gets the Most Candies?(线段树+模拟)
  3. (.iso)光盘镜像文件的打开与安装
  4. Activity Recognition行为识别
  5. java多线程 ReentrantLock
  6. call-template和apply-templates
  7. pl sql 无法解析指定的连接标识符
  8. servlet(jsp)中的重定向和转发
  9. 简单好用用js就可以保存文本文件到本地
  10. [ExtJS5学习笔记]第五节 使用fontawesome给你的extjs5应用增加字体图标
  11. java_反射
  12. ExcelPower_Helper插件下载与更新日志
  13. 《关于长沙.NET技术社区未来发展规划》问卷调查结果公布
  14. INTRODUCE OF REPRESENTATIVE CPG-CONTROLLED ROBOTS
  15. servlet篇 之 访问形式
  16. C#基础:委托之Action<T>和Func<T>的用法
  17. PAT甲级1080 Graduate Admission【模拟】
  18. https 网络传输安全架设
  19. windows编程按小时生成日志文件
  20. python 启动新进程执行脚本

热门文章

  1. Ping++中的AlipaySDK和AlicloudUTDID冲突解决方案
  2. .net core webapi +ddd(领域驱动)+nlog配置+swagger配置 学习笔记(2)
  3. 洛谷P1772 [ZJOI2006]物流运输
  4. 洛谷P1275 魔板
  5. NodeJS什么都能做,为什么还要JAVA?
  6. click点击事件先后顺序的问题
  7. SpringBoot2.0 基础案例(04):定时任务和异步任务的使用方式
  8. 转载 jQuery 整理的很详细,基本都在里面
  9. CF987C Three displays 暴力
  10. shell学习(13)- vim