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

【 每天学习一点算法 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.jsqmd.com/news/269239/

相关文章:

  • 基于vue和python的医院预约挂号系统的设计与实现
  • python基于vue的积分制零食商城自选平台 (三端:管理端+用户PC端+用户小程序端)
  • python基于人脸识别的互联网课堂学生考勤系统
  • 【机翼】三维机翼几何进行耦合静态气弹性分析Matlab仿真
  • 创客匠人视角:创始人 IP 与智能体的协同范式革命,重新定义知识变现的价值边界
  • 计算机毕业设计springboot基于Java的网上花店系统 计算机毕业设计springboot基于Java的网上花店系统 Java技术驱动的Spring Boot网上花店平台开发
  • 三维动态避障路径规划:基于山羊优化算法(Goat Optimization Algorithm, GOA)融合动态窗口法DWA的无人机三维动态避障方法研究附MATLAB代码
  • 创客匠人深度解析:创始人 IP 打造的智能体基建逻辑,重构知识变现底层规则
  • 【图像融合】基于小波变换红外和可见光图像融合(含评价指标)附Matlab代码
  • python基于大数据的自助餐厅菜品供应优化与分析预测系统 数据分析可视化大屏系统e8737qr2
  • 创客匠人洞察:智能体重构 IP 变现逻辑,创始人 IP 如何实现从 “单次付费” 到 “终身价值”
  • WebDataset使用指南:构建高效深度学习数据管道
  • 2026 年适合追剧吃的零食推荐、挑选技巧与选购指南(我常备的“追剧薯条”是浪味仙) - Top品牌推荐
  • Transformer完全入门指南:从零开始理解
  • 【必学收藏】一文讲透AI Agent、Agentic Workflow与Agentic AI:三个层级看懂AI自主行动完整体系(附6篇核心论文)
  • 广西产业带背后的真实情况:不要再把“东盟展厅”当成是源头工厂了!
  • Fastlane 结合 开心上架,构建跨优秀的平台可发布的 iOS 自动化流水线实践
  • python基于智能AI技术的教学辅助问答系统
  • Mac多显示器支持:TESmart USB-C KVM(搭载DisplayLink技术)全面解析
  • 收藏!2026大模型行业就业趋势全景报告:小白程序员转型必看
  • Oracle:增加十分钟
  • 【滤波跟踪】基于卡尔曼滤波实现分布式传感器采集目标的位置或信号强度(RSSI)数据目标运动轨迹进行实时预测与校正,输出跟踪误差(如平均距离误差、RMSE)并可视化跟踪结果matlab代码
  • 一文看懂:MES价值,MES系统对企业的生产管理有哪些改进?
  • 猴子
  • Java:POST请求发送的消息体太大
  • 3D设计效率突围 中小企业装配工具分享
  • 产品越怪,出单越快?从“哭哭马”爆红,解锁跨境选品新思路
  • 文献搜索:高效获取学术资源的方法与技巧
  • 计算机毕业设计springboot心理健康管理系统 基于Spring Boot的校园心理健康管理平台设计与实现 Spring Boot框架下心理健康管理系统开发与应用
  • 【PR】基础设置和操作