广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    Java如何计算汉明重量 (即二进制串中1的个数)

    来源:网络收集  点击:  时间:2024-02-13
    【导读】:
    题目:编写一个函数,输入一个带符号整数,返回其二进制表达式中数字位数为 1 的个数(也被称为汉明重量)。本篇经验将分享两个算法,一个是二进制字符串统计法,一个是位运算法。工具/原料moreEclipseJDK1.8方法/步骤1/5分步阅读

    实现二进制字符串统计法

    图示,通过 Integer 提供的 toBinaryString 方法,将数字转换为字符串,然后遍历字符串的的每一个字符,统计计算。

    2/5

    编写并运行测试方法,测试基于字符串的统计算法

    图示,调用算法获取数字 -3 和 1024 的汉明重量,并输出到控制台。

    3/5

    实现位运算算法

    图示,通过和1相“与”的位运算,判断最后一位是否是1,并进行无符号“右移位”运算。

    4/5

    编写并运行测试方法,测试位运算算法

    图示,调用算法获取数字 -3 和 1024 的汉明重量,并输出到控制台。

    5/5

    平台提交算法,位运算算法优于字符串统计算法

    图示,两个算法均通过测试,但在时间复杂度和空间复杂度上,位运算算法都明显优于字符串统计算法。

    注意事项

    汉明重量即一个二进制串中数字1的位数

    汉明重量统计1的位数
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_33461.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-06 00:53:45  耗时:0.025
    0.0252s