当前位置:网站首页>二进制中1的个数
二进制中1的个数
2022-08-02 13:04:00 【龙崎流河】
题目:
编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量).)。
提示:
请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。
在 Java 中,编译器使用 二进制补码 记法来表示有符号整数。因此,在上面的 示例 3 中,输入表示有符号整数 -3。
示例一:
输入:n = 11 (控制台输入 00000000000000000000000000001011)
输出:3
解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 ‘1’。
示例二:
输入:n = 128 (控制台输入 00000000000000000000000010000000)
输出:1
解释:输入的二进制串 00000000000000000000000010000000 中,共有一位为 ‘1’。
示例三:
输入:n = 4294967293 (控制台输入 11111111111111111111111111111101,部分语言中 n = -3)
输出:31
解释:输入的二进制串 11111111111111111111111111111101 中,共有 31 位为 ‘1’。
分析:
只需要记住一个公式n = n & (n-1)可以消除掉二进制数中最右边的1。
代码:
public class HammingWeight {
public int hammingWeight(int n) {
int sum = 0;
while (n != 0) {
n = n & (n-1);
sum++;
}
return sum;
}
}

边栏推荐
- 暑假集训-week2图论
- selenium chrome driver运行时的cannot determine loading status from target frame detached问题
- 无线振弦采集仪远程修改参数方式
- How to use the database like tap water?|Tencent Cloud Database TDSQL-C
- FreeRTOS中名称规范
- 路由-Tab切换页面
- ESP8266模块使用完整教程「建议收藏」
- RISC-V 指令格式和6种基本整数指令
- Oracle update error operation single table rollback
- 0801~ Interview questions
猜你喜欢

【C语言】函数哪些事儿,你真的get到了吗?(1)

鲁大师7月新机性能/流畅榜:性能跑分突破123万!

A powerful js pop-up alert plugin

3 ways for OpenFeign to set headers

In-depth analysis and use of Ribbon load balancing

你知道图论的Dijkstra吗?

"Second Uncle" is popular, do you know the basic elements of "exploding" short videos from the media?

【C语言】夏日一题 —— 求最大公约数和最小公倍数

WeChat applet getPhoneNumber interface code=40013

JS中的闭包
随机推荐
ETL(二):表达式组件的使用
This binding to detailed answers
js array recursively use
你知道图论的Dijkstra吗?
图论之Kruskal,最小生成树如何优雅解题?
你知道图论的spfa吗?
FreeRTOS--栈实验
qt 编译报错 No rule to make target
Oracle数据库的闪回技术
Flashback Technology of Oracle Database
图论之Floyd,多源图最短路如何暴力美学?
WPF效果第一百九十三篇之登录实现
js true 3d histogram plugin
C语言结构体(入门)
Openlayers Quick Start Tutorial
Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单。
如何关闭开启硬件加速[通俗易懂]
How to implement waterfall flow layout (what is waterfall flow layout)
基于flask商城的管理员功能
PGSQL database to realize the import and export