剑指 Offer 15. 二进制中1的个数

news2024/12/23 13:53:56

一、题目描述

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

二、示例

示例 1:

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

示例 2:

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

示例 3:

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

三、题目分析&解题思路

本题主要考查 位移操作符
左移 >>
右移 <<
按位与 & 运算符
在这里插入图片描述

则从左到右依次 右移 并 & 1,可以得到一个 十进制数字的 二进制
例如:
在这里插入图片描述
之后用计算器,计算 二进制中 1 出现的次数即可

四、代码实现

class Solution {
public:
    int hammingWeight(uint32_t n) {
        int iResult = 0;
        for(int i = 31; i >=0; i--)
        {
            if((n >> i) & 1)
            {
                iResult ++;
            }
        }
        return iResult;
    }
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/51375.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于SSM的邮箱客户端的设计与实现

目 录 摘 要 I Abstract II 第1章 绪论 1 1.1 选题及意义 1 1.2 邮箱发展现状 1 1.2.1开源邮件系统 2 1.2.2国外商业邮件系统 2 1.2.3国内商业邮件系统 2 1.3研究内容 4 第2章 相关技术的理论概述 5 2.1 JSPServlet技术优势 5 2.2Mysql数据库的介绍 6 2.3 tomcat服务器介绍 6 2…

mmdetection3d nuScenes (持续更新)

Mmdetection3d集成了大量3D深度学习算法&#xff0c;其中很大一部分可以在智能驾驶nuScenes数据集上运行。在算法应用nuScenes数据之前&#xff0c;mmdetection3d提供了相应的预处理程序。关于nuScenes的详细介绍请参考本博客之前的文章nuScenes数据集详细介绍_Coding的叶子的博…

react+node.js+mysql 前后端分离项目 宝塔面板 部署到腾讯云服务器

目录一. 前端项目部署1.登录宝塔面板并安装环境依赖2. 打包上传&#xff0c;部署前端项目3.端口放行二. 后端项目部署1.上传后端项目2. PM2中添加项目三. mysql1.宝塔面板 添加数据库2.导入sql文件一. 前端项目部署 1.登录宝塔面板并安装环境依赖 命令行第一行输入刚才复制的内…

你是否还记得有一款游戏叫做“魔塔”?

目录 前言 正文 游戏介绍&#xff1a; 游戏开发制作流程 1.收集素材 2.创建攻击函数 2.1 定义两个对象&#xff08;主角和怪物&#xff09; 2.2 函数输出为【0】表示打不过&#xff0c;胜利输出受损生命值&#xff0c;设置 cancel 可以撤销本次战斗即回到之前状态 2.…

pinia安装使用

pinia中文文档 目录 一.pinia简介 二. pinia安装 三.pinia使用 1.main.js中创建pinia实例 2.创建store状态库 定义state state的读写 state响应式解构 state的修改 Getters的使用 Pinia中Store的互相调用 一.pinia简介 Pinia是vue生态里Vuex的替代者&#xff0c;一个…

MySQL笔记【面试】

MySQL笔记【面试】前言推荐MySQL笔记最后前言 以下内容源自A minor 仅供学习交流使用 推荐 MySQL MySQL笔记 【MySQL】基础使用&#xff08;一&#xff09;&#xff1a;支持的数据类型 【MySQL】基础使用&#xff08;二&#xff09;&#xff1a;常用 SQL 语句大全 【MyS…

推荐系统-概述:基本架构

提纲 过去八九年在广告、生活服务、电商等领域从事大数据及推荐系统相关工作&#xff0c;近来打算对过去的工作做一个系统性的梳理。一方面帮自己查缺补漏、进行更深入的学习&#xff1b;另一方面也希望能通过博客结交同好&#xff0c;增进交流。 这一博客系列以介绍推荐系统为…

Arduino开发实例-旋转编码器RGB-LED调光

旋转编码器RGB-LED调光 在本文中,将使用 Arduino 和旋转编码器进行 RGB LED 颜色控制。 我们将旋转旋转编码器来分配值。 红色、绿色和蓝色将合并以显示基于该值的全新颜色。 在这里,使用具有红色、绿色和蓝色的单 RGB 颜色 LED,也可以使用长 RGB LED 灯条。 此外,还可以使…

「Redis」02 Redis中的数据类型(含Redis6.0:Bitmaps、HyperLogLog、Geospatial)

笔记整理自【尚硅谷】Redis 6 入门到精通 超详细 教程 Redis——Redis中的数据类型 0. 键 (key) 操作 keys *&#xff1a;查看当前库所有 keyexists key&#xff1a;判断某个 key 是否存在type key&#xff1a;查看你的 key 是什么类型del key &#xff1a;删除指定的 key 数…

[附源码]Python计算机毕业设计Django工程施工多层级管理架构

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

VMware的安装、配置及其Linux的安装、简单配置

安装VMware 1、找到下载好的安装包&#xff0c;双击 2、点击下一步 3、勾选 我接受许可协议中的条款 4、选择合适的路径安装 5、取消勾选项&#xff0c;如图所示 6、下一步 7、安装 8、等待&#xff08;等待半分钟左右&#xff09; 8、点击许可证 9、复制下面其中的密码 key…

centos7磁盘扩容(虚拟机Mac m1)

为了安装HDP3.1.4(Ambari2.7.4)弄了三台虚拟机&#xff0c;但安装完mysql和操作完前期准备后&#xff0c;上传ambari&#xff0c;HDP&#xff0c;HDP-UTILS安装包时&#xff0c;磁盘居然不够了&#xff0c;又是一顿折腾...... 第一种在原来磁盘上扩大存储 1.虚拟机磁盘大小设…

借助云的力量,重塑企业的现在和未来——亚马逊云科技re:Invent

在2022亚马逊云科技re:Invent全球大会的第二天&#xff0c;亚马逊云科技首席执行官Adam Selipsky发表了“如何借助云的力量&#xff0c;在未知领域抓住机遇并茁壮成长”的主题演讲。在两个小时的演讲中&#xff0c;Adam重点围绕数据、安全、计算性能和行业应用等4个主题发布了多…

Python基础——分支与循环

Python基础——分支与循环条件表达式if-else1.运算结果2.语法3.举例1.用分支语句实现求绝对值2.多分枝语句4.常用的比较符号5.常用的条件符合符号注意&#xff1a;条件表达式if-else 1.运算结果 布尔型 ture1 false0 2.语法 python 用缩进区分功能块所以缩进是不可一丢掉的…

C++ bool类型变量cin输入true,输出结果却是false?是因为cin输入的true会被当成字符串,所以bool变量原值不变吗?

首先&#xff0c;大家可能看过其他文章&#xff0c;他们给出的观点是这样的&#xff1a; 在C中bool类型的变量初始值为false&#xff0c;所以如果你不初始化&#xff0c;那么对变量使用cin>>赋值true和false的时候&#xff0c;编译器会把true和false当成是字符串&#x…

一键式 new 多个相同的实例(通过界面按钮 来控制 应用的创建、修改、删除,使用Docker Compose 编排应用所需环境)

一、简单介绍 需求&#xff1a;通过界面按钮 来控制 实例的创建、修改、删除。 由于Web应用采用多服务方式开发&#xff0c;每个服务都可以单独访问&#xff08;单独占用一个端口&#xff09;。以前部署服务器&#xff0c;采用的Nginx监听端口 转发。但是这样就会在new整个应…

25K 入职腾讯的那天,我哭了...

悲催的经历&#xff1a; 先说一下自己的个人情况&#xff0c;计算机专业&#xff0c;17 年本科毕业&#xff0c;一毕业就进入了“阿里”测试 岗(进去才知道是接了个阿里外包项目&#xff0c;可是刚毕业谁知道什么外包不外包的)。 更悲催的是&#xff1a;刚入职因为家里出现一…

pcl中MomentOfInertiaEstimation解析与实例

pcl中features模块又基于惯性矩和偏心率的描述子&#xff0c;也可以求取点云的AABB和OBB包围盒&#xff0c;在计算的过程中法线一些问题&#xff0c;特此记录。 针对惯性矩和偏心率这两个数据的应用场景还不明确&#xff0c;因此暂时不做讨论&#xff0c;主要讨论求取OBB时的代…

天宇优配|GDR海外发行热情高 资本市场互联互通提速

圆桌评论&#xff1a;“对话交易所——上海&#xff0c;为中欧互联互通提速” “2022上海全球资产管理高峰论坛”11月29日在上海举办。在题为“对话交易所——上海&#xff0c;为中欧互联互通提速”的圆桌评论环节&#xff0c;来自全球各大证券交易所、证券公司、上市公司的多…

python学习笔记(12)---(内置模块)

目录 第十章 内置模块 1.math模块 2.random模块 3.os模块和os.path模块 4.sys模块 5.UUID模块 6.时间日期模块 7.加密模块hashlib&#xff1a;接受传入内容&#xff0c;计算后得到hash值 第十章 内置模块 1.math模块 &#xff08;1&#xff09;查看方法&#xff1a;…