常见算法题 -- 简单

104 阅读1分钟

二进制中1的个数

力扣

请实现一个函数,输入一个整数,输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。

var hammingWeight = function(n) {
    const t = n.toString(2).split('0')
    const l = t.filter(item => !!item).join('')
    return l.length
};

打印从1到最大的n位数

力扣

输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。

var printNumbers = function(n) {
    const t = 1 * 10 ** n -1
    var a = []
    for(let i=1; i<=t; i++) {
        a.push(i)
    }
    return a
};