用c++很简单,但是如何使用javascript解决这道题(一直报错,通不过)?
PHP中文网
PHP中文网 2017-04-10 18:08:56
[JavaScript讨论组]

var hammingWeight = function(n) {
    var j = 0;
    var answer = "";
    if(n === 1) {
        return 1;
    }
    if (n !== 0)
        {
            while (n !== 0) {
                answer = Math.abs(n % 2) + answer;
                n = parseInt(n / 2);
            }
            if (answer.length === 0){
                answer = "0";
                return 0;
            }
            for (var a in answer) {
            if (a == 1) {
                j++;
            } else {
                continue;
            }
        }
        return j;
        }
        else {
            return 0;
        }

};

PHP中文网
PHP中文网

认证0级讲师

全部回复(2)
天蓬老师

用 JavaScript 更简单啊,几句话就结了

function getOneCount(n) {
    var s = n.toString(2);
    var p = s.split(/1/);
    return p.length - 1;
}
ringa_lee

看不懂你的逻辑。。

我写的(手机码字):

function (n) {
  var ans = 0;
  while (n) {
    if (n & 1) ans++;
    n >>= 1;
  }
  return ans;
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号