当前位置: 首页 > news >正文

python--剑指offer--15. 二进制中1的个数

编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量).)。

提示:

请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。
在 Java 中,编译器使用 二进制补码 记法来表示有符号整数。因此,在上面的 示例 3 中,输入表示有符号整数 -3。

示例 1:

输入:n = 11 (控制台输入 00000000000000000000000000001011)
输出:3
解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 ‘1’。
示例 2:

输入:n = 128 (控制台输入 00000000000000000000000010000000)
输出:1
解释:输入的二进制串 00000000000000000000000010000000 中,共有一位为 ‘1’。
示例 3:

输入:n = 4294967293 (控制台输入 11111111111111111111111111111101,部分语言中 n = -3)
输出:31
解释:输入的二进制串 11111111111111111111111111111101 中,共有 31 位为 ‘1’。

提示:

输入必须是长度为 32 的 二进制串 。

public class Solution {public int hammingWeight(int n) {int ret = 0;while (n != 0) {ret += n & 1;n >>>= 1;}return ret;}
}
public class Solution {public int hammingWeight(int n) {int ret = 0;while (n != 0) {ret++;n &= (n - 1);}return ret;}
}
http://www.lryc.cn/news/320395.html

相关文章:

  • uniapp h5 部署
  • 排序算法:快速排序(递归)
  • 蓝桥杯每日一题(BFS)
  • 【C语言】linux内核pci_save_state
  • 轻松打造完美原型:9款在线工具推荐
  • Vue3中Pinia状态管理库学习笔记
  • 共谋企业出海新篇章纷享销客荣获数字中国企业峰会“卓越成果奖”
  • 【MySQL】group_concat 函数和 locate 函数运用之找到每篇文章的主题
  • RedisCluster集群中的插槽为什么是16384个?
  • 一直出现问题,发现服务器磁盘空间已满导致,腾出服务器磁盘空间命令
  • 吴恩达机器学习笔记 二十三 倾斜数据集的误差指标 精确率 召回率 精确率与召回率的平衡 F1分数
  • 无人游艇的研发和开发对于多个领域具有重要
  • 在AI创业热潮下,如何抓住AI赚钱机会,实现人生逆袭
  • JETSON 配置并跑通 NanoDet
  • 突破编程_C++_C++11新特性(unordered_multimap)
  • 15.WEB渗透测试--Kali Linux(三)
  • Android-Framework pm list packages和pm install返回指定应用信息
  • CSS
  • 算法详解——选择排序和冒泡排序
  • 图论(蓝桥杯 C++ 题目 代码 注解)
  • 矩阵起源新一年喜报连连!
  • 牛客——紫魔法师(并查集)
  • 最新WooCommerce教程指南-如何搭建B2C外贸独立站
  • 一文教会你SpringBoot是如何启动的
  • 车载测试面试:各大车企面试题汇总
  • Qt散文一
  • MySQL学习Day32——数据库备份与恢复
  • 阅读基础知识
  • 【NestJS 编程艺术】1. NestJS设计模式深度解析:构建高效、可维护的服务端应用
  • QT中connect()的参数5:Qt::DirectConnection、Qt::QueuedConnection区别