Golang : Shuffle strings array



Tags : golang shuffle array slice elements strings

Okay, the previous tutorial on how to shuffle elements inside an array does not work with strings array. To shuffle array with strings, use this code example instead.

 package main

 import (
 "fmt"
 "math/rand"
 "time"
 )

 func shuffle(src []string) []string {
 final := make([]string, len(src))
 rand.Seed(time.Now().UTC().UnixNano())
 perm := rand.Perm(len(src))

 for i, v := range perm {
 final[v] = src[i]
 }
 return final
 }

 func main() {

 str := []string{
 "first",
 "second",
 "third",
 }

 shuffled := shuffle(str)

 fmt.Printf("Original order  :  %v\n", str)

 fmt.Printf("Shuffled order  :  %v\n", shuffled)

 }

Sample output :

Original order : [first second third]

Shuffled order : [second third first]

Affiliate :

Hire Golang Developers


  See also : Golang : How to shuffle elements in array or slice?



Tags : golang shuffle array slice elements strings

By Adam Ng

IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.


Advertisement