您的位置:1010cc时时彩经典版 > 1010cc时时彩客户端 > 1010cc时时彩经典版别人家的面试题,叁个整数是

1010cc时时彩经典版别人家的面试题,叁个整数是

发布时间:2019-09-23 15:57编辑:1010cc时时彩客户端浏览(79)

    统计“1”的个数

    给定一个非负整数 num,对于任意 i,0 ≤ i ≤ num,计算 i 的值对应的二进制数中 “1” 的个数,将这些结果返回为一个数组。

    例如:

    当 num = 5 时,返回值为 [0,1,1,2,1,2]。

    /** * @param {number} num * @return {number[]} */ var countBits = function(num) { //在此处实现代码 };

    1
    2
    3
    4
    5
    6
    7
    /**
    * @param {number} num
    * @return {number[]}
    */
    var countBits = function(num) {
        //在此处实现代码
    };

    “4”的整数次幂

    给定一个32位有符号整数(32 bit signed integer),写一个函数,检查这个整数是否是“4”的N次幂,这里的N是非负整数。

    例如:

    • 给定 num = 16,返回 true,因为 16 = 42
    • 给定 num = 5,返回 flase

    附加条件: 你能够不用循环和递归吗?

    您可能感兴趣的文章:

    • 详解JS中Array对象扩展与String对象扩展
    • Javascript string 扩展库代码
    • Javascript String对象扩展HTML编码和解码的方法
    • JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码
    • JavaScript中ES6字符串扩展方法
    • JavaScript常用字符串与数组扩展函数小结
    • js实现prototype扩展的方法(字符串,日期,数组扩展)
    • javascript框架设计读书笔记之字符串的扩展和修复
    • JS字符串函数扩展代码
    • JavaScript实现替换字符串中最后一个字符的方法
    • JavaScript利用正则表达式替换字符串中的内容
    • js replace(a,b)之替换字符串中所有指定字符的方法
    • JavaScript基于扩展String实现替换字符串中index处字符的方法

    容易发现,除了11最右边那个位和5的最高位,其他位对应一样。也就是说i用二进制表示时1出现的次数等于i/2中1出现的次数加1(如果i用二进制表示时最右边一位为1,否则不加1)。这样我们在计算i时可以利用前面已计算出的i/2:ret[i] = ret[i/2] (i % 2 == 0 ? 0 : 1);

    String.prototype.ToCharArray=function() { returnthis.split(""); } //获取N个相同的字符串 String.prototype.Repeat=function(num) { vartmpArr=[]; for(vari=...

    关于作者:十年踪迹

    1010cc时时彩经典版 1

    月影,奇舞团团长,热爱前端开发,JavaScript 程序猿一枚,能写代码也能打杂卖萌说段子。 个人主页 · 我的文章 · 14 ·     

    1010cc时时彩经典版 2

    关于作者:十年踪迹

    1010cc时时彩经典版 3

    月影,奇舞团团长,热爱前端开发,JavaScript 程序猿一枚,能写代码也能打杂卖萌说段子。 个人主页 · 我的文章 · 14 ·     

    1010cc时时彩经典版 4

    //获取字符数组
    String.prototype.ToCharArray=function()
    {
             return this.split("");
    }
    //获取N个相同的字符串
    String.prototype.Repeat=function(num)
    {
        var tmpArr=[];
        for(var i=0;i<num;i )    tmpArr.push(this);
        return tmpArr.join("");
    }
    //逆序
    String.prototype.Reverse=function()
    {
         return this.split("").reverse().join("");
    }
    //测试是否是数字
    String.prototype.IsNumeric=function()
    {
        var tmpFloat=parseFloat(this);
        if(isNaN(tmpFloat))    return false;
        var tmpLen=this.length-tmpFloat.toString().length;
        return tmpFloat "0".Repeat(tmpLen)==this;
    }
    //测试是否是整数
    String.prototype.IsInt=function()
    {
        if(this=="NaN")    return false;
        return this==parseInt(this).toString();
    }
    // 合并多个空白为一个空白
    String.prototype.resetBlank = function()
    {
        return this.replace(/s /g," ");
    }
    // 除去左边空白
    String.prototype.LTrim = function()
    {
        return this.replace(/^s /g,""); 

    // 除去右边空白
    String.prototype.RTrim = function()
    {
        return this.replace(/s $/g,""); 
    }
    // 除去两边空白
    String.prototype.trim = function()
    {
        return this.replace(/(^s )|(s $)/g,""); 
    }
    // 保留数字
    String.prototype.getNum = function()
    {
        return this.replace(/[^d]/g,"");
    }
    // 保留字母
    String.prototype.getEn = function()
    {
        return this.replace(/[^A-Za-z]/g,""); 
    }
    // 保留中文
    String.prototype.getCn = function()
    {
        return this.replace(/[^u4e00-u9fa5uf900-ufa2d]/g,"");
    }
    // 得到字节长度
    String.prototype.getRealLength = function()
    {
        return this.replace(/[^x00-xff]/g,"--").length;
    }
    // 从左截取指定长度的字串
    String.prototype.left = function(n)
    {
        return this.slice(0,n);
    }
    // 从右截取指定长度的字串
    String.prototype.right = function(n)
    {
        return this.slice(this.length-n);
    }
    // HTML编码
    String.prototype.HTMLEncode = function()
    {
        var re = this;
        var q1 = [/x26/g,/x3C/g,/x3E/g,/x20/g];
        var q2 = ["&","<",">"," "];
        for(var i=0;i<q1.length;i )
        re = re.replace(q1[i],q2[i]);
        return re;
    }
    // Unicode转化
    String.prototype.ascW = function()
    {
        var strText = "";
        for (var i=0; i<this.length; i ) strText  = ""   this.charCodeAt(i)   ";";
        return strText;

    Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the number of 1's in their binary representation and return them as an array.

    Example:
    For num = 5 you should return [0,1,1,2,1,2].

    //获取字符数组
    String.prototype.ToCharArray=function()
    {
             return this.split("");
    }
    //获取N个相同的字符串
    String.prototype.Repeat=function(num)
    {
        var tmpArr=[];
        for(var i=0;i<num;i )    tmpArr.push(this);
        return tmpArr.join("");
    }
    //逆序
    String.prototype.Reverse=function()
    {
         return this.split("").reverse().join("");
    }
    //测试是否是数字
    String.prototype.IsNumeric=function()
    {
        var tmpFloat=parseFloat(this);
        if(isNaN(tmpFloat))    return false;
        var tmpLen=this.length-tmpFloat.toString().length;
        return tmpFloat "0".Repeat(tmpLen)==this;
    }
    //测试是否是整数
    String.prototype.IsInt=function()
    {
        if(this=="NaN")    return false;
        return this==parseInt(this).toString();
    }
    // 合并多个空白为一个空白
    String.prototype.resetBlank = function()
    {
        return this.replace(/s /g," ");
    }
    // 除去左边空白
    String.prototype.LTrim = function()
    {
        return this.replace(/^s /g,""); 

    // 除去右边空白
    String.prototype.RTrim = function()
    {
        return this.replace(/s $/g,""); 
    }
    // 除去两边空白
    String.prototype.trim = function()
    {
        return this.replace(/(^s )|(s $)/g,""); 
    }
    // 保留数字
    String.prototype.getNum = function()
    {
        return this.replace(/[^d]/g,"");
    }
    // 保留字母
    String.prototype.getEn = function()
    {
        return this.replace(/[^A-Za-z]/g,""); 
    }
    // 保留中文
    String.prototype.getCn = function()
    {
        return this.replace(/[^u4e00-u9fa5uf900-ufa2d]/g,"");
    }
    // 得到字节长度
    String.prototype.getRealLength = function()
    {
        return this.replace(/[^x00-xff]/g,"--").length;
    }
    // 从左截取指定长度的字串
    String.prototype.left = function(n)
    {
        return this.slice(0,n);
    }
    // 从右截取指定长度的字串
    String.prototype.right = function(n)
    {
        return this.slice(this.length-n);
    }
    // HTML编码
    String.prototype.HTMLEncode = function()
    {
        var re = this;
        var q1 = [/x26/g,/x3C/g,/x3E/g,/x20/g];
        var q2 = ["&","<",">"," "];
        for(var i=0;i<q1.length;i )
        re = re.replace(q1[i],q2[i]);
        return re;
    }
    // Unicode转化
    String.prototype.ascW = function()
    {
        var strText = "";
        for (var i=0; i<this.length; i ) strText  = ""   this.charCodeAt(i)   ";";
        return strText;

    本文由1010cc时时彩经典版发布于1010cc时时彩客户端,转载请注明出处:1010cc时时彩经典版别人家的面试题,叁个整数是

    关键词: