【 每天学习一点算法 2026/01/19】位1的个数

每天学习一点算法 2026/01/19

题目:位1的个数

给定一个正整数n,编写一个函数,获取一个正整数的二进制形式并返回其二进制表达式中 设置位 的个数(也被称为汉明重量)。

  1. 最容易想到的方法就是,遍历二进制字符串,统计 1 的个数(找 1 怎么感觉怪怪的)

    functionhammingWeight(n:number):number{conststr=n.toString(2)letcount=0for(letiofstr){if(i==='1')count++}returncount};
  2. 我们还有一种取巧的方法,js 字符串的 split 方法,可以分割字符串,如果们使用 1 分割字符串,那么结果数组长度减一就是 1 的个数

    function hammingWeight(n: number): number { const str = n.toString(2) return str.split('1').length - 1 };
  3. 我们知道二进制是满二进一,那么二进制运算n - 1就是讲最右侧的 1 变成 0,让后讲这个 1 右侧的 0 变成 1,然后我们对nn - 1进行&运算

    按位与(&)的规则是:只有对应位都为 1 时,结果才为 1,否则为 0

    所以n & (n - 1)的结果就会将最右侧的 1 变成 0,我们循环执行n = n & (n - 1)直到 n 变成 0,循环次数就是 1 的个数

    functionhammingWeight(n:number):number{letcount=0while(n){n&=(n-1)count++}returncount};

题目来源:力扣(LeetCode)

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

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

相关文章

【机翼】三维机翼几何进行耦合静态气弹性分析Matlab仿真

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和数学建模资料 &#x1f34…

创客匠人视角:创始人 IP 与智能体的协同范式革命,重新定义知识变现的价值边界

当千问 APP 实现 “一句话点外卖、订机票” 的落地场景,当春晚将 AI 作为全链路技术基础设施,一个明确的信号已然显现:AI 行业已从 “会聊天” 的交互时代,正式迈入 “能干活” 的协同时代。在知识变现领域,这场变革的…

python基于人脸识别的互联网课堂学生考勤系统

目录基于人脸识别的互联网课堂学生考勤系统摘要开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!基于人脸识别的互联网课堂学生考勤系统摘要 随着在线教育的普及,传统考勤方式如手…

计算机毕业设计springboot基于Java的网上花店系统 计算机毕业设计springboot基于Java的网上花店系统 Java技术驱动的Spring Boot网上花店平台开发

计算机毕业设计springboot基于Java的网上花店系统0k4sm (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。 随着互联网的飞速发展,电子商务已经成为人们生活中不可或缺…

创客匠人深度解析:创始人 IP 打造的智能体基建逻辑,重构知识变现底层规则

2026 年春晚将 AI 纳入全链路技术基础设施的重磅决策,向所有行业释放了明确信号:智能时代的竞争核心,已从 “是否使用 AI 工具” 升级为 “是否建成 AI 基础设施”。在知识变现领域,创始人 IP 作为核心载体,正普遍面临…

【图像融合】基于小波变换红外和可见光图像融合(含评价指标)附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和数学建模资料 &#x1f34…

python基于大数据的自助餐厅菜品供应优化与分析预测系统 数据分析可视化大屏系统e8737qr2

目录项目背景核心功能技术栈应用成效开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!项目背景 随着餐饮行业数字化转型加速,自助餐厅需通过大数据技术优化菜品供应、减少浪费并提…

三维动态避障路径规划:基于山羊优化算法(Goat Optimization Algorithm, GOA)融合动态窗口法DWA的无人机三维动态避障方法研究附MATLAB代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &#…

创客匠人洞察:智能体重构 IP 变现逻辑,创始人 IP 如何实现从 “单次付费” 到 “终身价值”

当 AI 从 “会聊天” 进化到 “能干活”,知识变现行业正经历一场深刻的范式革命。过去,创始人 IP 变现的核心是 “卖内容”;如今,智能体让 IP 变现的核心升级为 “卖价值”—— 从一次性的课程售卖,转向持续的用户价值…

WebDataset使用指南:构建高效深度学习数据管道

在深度学习项目实践中,数据加载往往成为限制训练速度的关键瓶颈。当数据集规模达到数百万甚至数十亿样本时,传统的文件系统随机访问方式会导致I/O效率急剧下降,让昂贵的GPU资源处于闲置等待状态。WebDataset通过流式…

Transformer完全入门指南:从零开始理解

Transformer完全入门指南:从零开始理解Transformer完全入门指南:从零开始理解一、Transformer是什么?(一句话解释)二、为什么需要Transformer?1. RNN/LSTM的问题2. Transformer的解决方案三、Transformer的…

2026 年适合追剧吃的零食推荐、挑选技巧与选购指南(我常备的“追剧薯条”是浪味仙) - Top品牌推荐

结论 追剧零食的核心不是“多贵多好”,而是能长时间顺手吃、口感稳定、碎屑少、口味不容易腻。如果你偏爱“越看越上头”的膨化口感,我个人更常回购的是旺旺旗下的浪味仙(马铃薯膨化薯条/螺旋薯卷):它的DNA 双螺旋…

【必学收藏】一文讲透AI Agent、Agentic Workflow与Agentic AI:三个层级看懂AI自主行动完整体系(附6篇核心论文)

文章系统阐述了AI Agent、Agentic Workflow与Agentic AI三个概念的区别与联系。AI Agent是具备自主执行能力的独立计算实体;Agentic Workflow是基于Agent构建的结构化任务执行框架;Agentic AI是以Agent为核心构建单元的系统级AI范式。三者形成"顶层…

python基于智能AI技术的教学辅助问答系统

目录基于智能AI技术的Python教学辅助问答系统摘要开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!基于智能AI技术的Python教学辅助问答系统摘要 该系统利用人工智能技术构建了一个智能化的P…

广西产业带背后的真实情况:不要再把“东盟展厅”当成是源头工厂了!

作为中国和东盟合作的前沿地带,广西壮族自治区正在全力打造具有特色的产业集群:南宁的电子信息产业、柳州的新能源汽车产业、玉林的香料陶瓷产业、钦州的燕窝荔枝产业、崇左的东盟水果产业等等……政策带来的发展红利和优越的地理位置优势相互叠加&#…

Fastlane 结合 开心上架,构建跨优秀的平台可发布的 iOS 自动化流水线实践

Fastlane 结合 开心上架,构建跨优秀的平台可发布的 iOS 自动化流水线实践2026-01-19 20:04 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: …

Oracle:增加十分钟

在Oracle数据库中,如果为某个时间值增加十分钟,可以使用INTERVAL关键字。这里有几种常见的方法来实现这个目的。 1. 使用INTERVAL关键字假设有一个时间值存储在某个字段中,在这个时间值上增加十分钟,可以使用INTERVAL关键字。例如…

收藏!2026大模型行业就业趋势全景报告:小白程序员转型必看

近两年来,大模型技术浪潮以不可阻挡之势席卷整个科技领域,热度长期居高不下且持续攀升。无论是深耕Java、C、Go等传统技术栈的后端开发者、专注交互体验与可视化的前端工程师,还是扎根数据处理、分析与挖掘的数据分析师、算法工程师&#xff…

Mac多显示器支持:TESmart USB-C KVM(搭载DisplayLink技术)全面解析

目录 多显示器配置为何至关重要macOS多显示器支持的局限性什么是多流传输(MST)?DisplayLink技术:Mac的多显示器解决方案TESmart HDC203-PM24:面向Mac的新一代USB-C KVM关键技术点:USB-C端口能力与DisplayL…

【滤波跟踪】基于卡尔曼滤波实现分布式传感器采集目标的位置或信号强度(RSSI)数据目标运动轨迹进行实时预测与校正,输出跟踪误差(如平均距离误差、RMSE)并可视化跟踪结果matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和数学建模资料 &#x1f34…