Geebarwan
V2EX  ›  问与答

请教一个位运算的问题

  •  
  •   Geebarwan · Feb 19, 2022 · 1161 views
    This topic created in 1547 days ago, the information mentioned may be changed or developed.

    我有一个位运算方法,我想通过 3325 计算出来 [1, 2, 3, 5, 7, 100], 应该怎么去写呢?

    
    function bitOperation(n) {
        for (var t = 0, r = n.length - 1; r >= 0; r--) {
            t = t << 1 | +n[r]
        }
        return t
    }
    
    const value = bitOperation([1, 2, 3, 5, 7, 100])
    console.log(value) // 3325
    
    
    2 replies    2022-02-20 15:48:21 +08:00
    ysc3839
        1
    ysc3839  
       Feb 19, 2022   ❤️ 1
    大概不可行,因为 bitOperation([1, 2, 1, 1, 7, 100])也是 3325
    msg7086
        2
    msg7086  
       Feb 20, 2022   ❤️ 1
    这相当于哈希算法,是不可逆的,会产生复数个解。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2952 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 05:30 · PVG 13:30 · LAX 22:30 · JFK 01:30
    ♥ Do have faith in what you're doing.