zoukankan      html  css  js  c++  java
  • JavaScript:计算1在数字中出现的次数

    题目:

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

    示例 1:

    输入:00000000000000000000000000001011

    输出:3

    解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 '1'。

    这课题主要考到的知识点:

        1、0开头的数字,js会自动解析成8进制

        2、对1的匹配,记录出现次数

        菜鸡解法:

     var hammingWeight = function (n) {
    
            var j = 0
    
            var num = n.toString(2).split('')
    
            for (var i = 0, len = num.length; i < len; i++) {
    
                if (num[i] == 1) {  
    
                    j++
    
                }
    
            }
    
            return j
    
        };

        大神解法:(直接正则搞定)ps:我怎么没想到,大神就是大神。

      

      var hammingWeight = function (n) {
    
            return ((n.toString(2)).match(/1/g) || []).length
    
        };

    作者:wang-yi-dong

    链接:https://leetcode-cn.com/problems/number-of-1-bits/solution/javascriptti-jie-by-wang-yi-dong/

    题目链接:https://leetcode-cn.com/problems/number-of-1-bits

    来源:力扣(LeetCode)

    你们的支持,是我前进的动力~

  • 相关阅读:
    linux grep命令
    PHP 利用simplexml_load_file 读取XML对应的字段 然后存入mysql数据库
    php 设计模式之单类模式
    Mac C#开发工具Rider安利与环境配置教程
    模拟,贪心,枚举(二)
    模拟,贪心,枚举
    10.10 review
    review 10.9
    10.6 review
    9.28 review
  • 原文地址:https://www.cnblogs.com/wyd168/p/11564022.html
Copyright © 2011-2022 走看看