Related Articles
bits.RotateLeft() Function in Golang with Examples
• Last Updated : 19 Apr, 2020

Go language provides inbuilt support for bits to implement bit counting and manipulation functions for the predeclared unsigned integer types with the help of bits package. This package provides RotateLeft() function which is used to rotate a left by (k mod UintSize) bits and to rotate a right by k bits you need to call RotateLeft(a, -k). To access RotateLeft() function you need to add a math/bits package in your program with the help of the import keyword.

Syntax:

`func RotateLeft(a uint, k int) uint`

Parameters: This function takes two parameter i.e., a of uint type and k of int type.

Return Value: This function return the rotated(either left or right) value of uint type.

Example 1:

 `// Golang program to illustrate bits.RotateLeft() Function``package main`` ` `import (``    ``"fmt"``    ``"math/bits"``)`` ` `// Main function``func main() {`` ` `    ``// Using RotateLeft() function``    ``var a uint = 5``    ``b := bits.RotateLeft(a, 1)``    ``fmt.Printf(``"Original: %b"``, a)``    ``fmt.Printf(``"\nAfter Rotation(Left): %b"``, b)`` ` `}`

Output:

```Original: 101
After Rotation(Left): 1010
```

Example 2:

 `// Golang program to illustrate bits.RotateLeft() Function``package main`` ` `import (``    ``"fmt"``    ``"math/bits"``)`` ` `// Main function``func main() {`` ` `    ``// Using RotateLeft() function``    ``var a uint = 5``    ``b := bits.RotateLeft(a, -1)``    ``fmt.Printf(``"Original: %b"``, a)``    ``fmt.Printf(``"\nAfter Rotation(Right): %b"``, b)`` ` `}`

Output:

Original: 101
After Rotation(Right): 1000000000000000000000000000000000000000000000000000000000000010

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up