美文网首页
leetcode刷题记录--Number Complement

leetcode刷题记录--Number Complement

作者: fishliu | 来源:发表于2018-01-11 10:14 被阅读0次

    题目

    难度:easy

    Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.

    Note:
    The given integer is guaranteed to fit within the range of a 32-bit signed integer.
    You could assume no leading zero bit in the integer’s binary representation.
    Example 1:

    Input: 5
    Output: 2
    Explanation: The binary representation of 5 is 101 (no leading zero bits), and its complement is 010. So you need to output 2.
    

    Example 2:

    Input: 1
    Output: 0
    Explanation: The binary representation of 1 is 1 (no leading zero bits), and its complement is 0. So you need to output 0.
    ```
    ## 第一次解法
    
    ````javascript
    /**
     * @param {number} num
     * @return {number}
     */
    var findComplement = function(num) {
        let a = '';
        num.toString(2).split("").forEach(function(item){
            if(item === "1"){
                a += "0"
            }else{
                a += "1"
            }
        })
        return parseInt(a,2)
    };
    # runtime : 89 ms
    

    相关文章

      网友评论

          本文标题:leetcode刷题记录--Number Complement

          本文链接:https://www.haomeiwen.com/subject/ljrznxtx.html