HTMLify

LeetCode - Reverse Bits - Go
Views: 6 | Author: abh
func uint32_to_bin_s(n uint32) string {
    var b string
    for ;n!=0; {
        if n%2==1 {
            n--
            b = "1" + b
        } else {
            b = "0" + b
        }
        n /= 2
    }
    for ;len(b)<32; {
        b = "0" + b
    }
    return b
}
func reverseBits(num uint32) uint32 {
    b := uint32_to_bin_s(num)
    var ans uint32
    var p uint32 = 1
    for i := 0; i<32; i, p = i+1, p*2 {
        if b[i] == '1' {
            ans += p
        }
    }
    return ans
}

Comments