Count Set Bits in an Integer Using Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 11:38:50

2K+ Views

ExamplesFor example, 101, 11, 11011 and 1001001 set bits count 2, 2, 4 and 3 respectively.Approach to solve this problemStep 1 − Convert number into binary representation.Step 2 − Count the number of 1s; return count.Example Live Demopackage main import (    "fmt"    "strconv" ) func NumOfSetBits(n int) int{    count := 0    for n !=0{       count += n &1       n >>= 1    }    return count } func main(){    n := 20    fmt.Printf("Binary representation of %d is: %s.", n,    strconv.FormatInt(int64(n), 2))    fmt.Printf("The total number of set bits in %d is %d.", n, NumOfSetBits(n)) }OutputBinary representation of 20 is: 10100. The total number of set bits in 20 is 2.

Check If Binary Representation of a Number Is Palindrome in Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 11:26:31

285 Views

ExamplesFor example, 101, 11, 11011, 1001001 are Palindrome. 100, 10010 are not Palindrome.Approach to solve this problemStep 1 − Convert number into binary representation.Step 2 − Traverse the converted binary representation from both side and check whether representation is palindrome or not.Example Live Demopackage main import (    "fmt"    "strconv" ) func IsPalindrome(n int) bool{    rev := 0    k := n    for k != 0 {       rev = (rev > 1    }    return n == rev } func main(){    n := 3    fmt.Printf("Binary representation of %d is: %s.", n,    strconv.FormatInt(int64(n), 2))    if IsPalindrome(n) == true{       fmt.Println("Palindrome")    } else {       fmt.Println("Not a Palindrome")    } }OutputBinary representation of 3 is: 11. Palindrome

Count Flips to Convert One Integer to Another in Golang

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 11:20:53

181 Views

ExamplesConsider two numbers m = 65 => 01000001 and n = 80 => 01010000Number of bits flipped is 2.Approach to solve this problemStep 1 − Convert both numbers into bits.Step 2 − Count number of bits are flipped.Example Live Demopackage main import (    "fmt"    "strconv" ) func FindBits(x, y int) int{    n := x ^ y    count := 0    for ;n!=0; count++{       n = n & (n-1)    }    return count } func main(){    x := 65    y := 80    fmt.Printf("Binary of %d is: %s.", x, strconv.FormatInt(int64(x), 2))   ... Read More

Find the Parity of a Given Number in Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 11:17:40

957 Views

Definition − Parity refers to the count of 1s. If count of 1s is even, then it’s even parity; and if the count of 1s is odd, then the parity is Odd.ExamplesConsider n = 20(00010100)Parity of the given number 20 is even.Approach to solve this problemStep 1 − Define a method, where n and is an argument, return type is int.Step 2 − Calculate the count of 1s in the given number’s bit.Example Live Demopackage main import (    "fmt"    "strconv" ) func FindParity(n int) bool {    parity := false    for n != 0 {       ... Read More

Find Position of the Rightmost Set Bit in Golang

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 11:11:57

342 Views

ExamplesConsider n = 20(00010100)Now return log2(20 & -20) => 2+1 => 3Approach to solve this problemStep 1 − Define a method, where n and is an argument, return type is int.Step 2 − Return log2(n & -n)+1.Examplepackage main import (    "fmt"    "math"    "strconv" ) func FindRightMostSetBit(n int) int {    if (n & 1) != 0{       return 1    }    return int(math.Log2(float64(n & -n))) + 1 } func main(){    var n = 20    fmt.Printf("Binary of %d is: %s.", n, strconv.FormatInt(int64(n), 2))    fmt.Printf("Position of the rightmost set bit of the given number %d is %d.", n, FindRightMostSetBit(n)) }OutputBinary of 20 is: 10100. Position of the rightmost set bit of the given number 20 is 3.

Check If Number Is Power of 2 in Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 11:06:52

693 Views

ExamplesConsider n = 16(00010000)Now find x = n-1 => 15(00001111) => x & n => 0Approach to solve this problemStep 1 − Define a method, where n and is an argument, returns type is int.Step 2 − Perform x = n & n-1.Step 3 − If x is 0, then the given number is power of 2; else not.Example Live Demopackage main import (    "fmt"    "strconv" ) func CheckNumberPowerOfTwo(n int) int {    return n & (n-1) } func main(){    var n = 16    fmt.Printf("Binary of %d is: %s.", n, strconv.FormatInt(int64(n), 2))    flag := CheckNumberPowerOfTwo(n)   ... Read More

Toggle the Kth Bit of a Given Number in Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 11:01:23

173 Views

ExamplesConsider n = 20(00010100), k = 3.After toggling the kth bit of the given number: 00010000 => 16.Approach to solve this problemStep 1 − Define a method, where n and k would be the arguments, returns type is int.Step 2 − Perform AND operation with n ^ (1

Check if K-th Bit is Set for a Given Number in Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 10:58:33

2K+ Views

ExamplesConsider n = 20(00010100), k = 3So, the result after turning off the 3rd bit => 00010000 & (1

Turn On the K-th Bit in a Number Using Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 10:56:25

202 Views

ExampleFor example consider n = 20(00010100), k = 4. So result after turning on 4th bit => 00010000 | (1

Turn Off the K-th Bit in a Number Using Go

Rishikesh Kumar Rishi
Updated on 17-Mar-2021 10:54:15

189 Views

ExampleConsider n = 20(00010100), k = 3 The result after turning off the 3rd bit => 00010000 & ^(1 16sApproach to solve this problemStep 1 − Define a method, where n and k would be the arguments, return type is int.Step 2 − Perform AND operation with n & ^(1

Advertisements