How to find element in a slice and move it to first position in Go

1 Answer

0 votes
package main
  
import (
    "fmt"
)
  
func main() {
    slice := []int{4, 6, 12, 45, 98, 77, 32, 5, 1, 99, 100}
    val := 32
    
    fmt.Println(slice)
    
    for p, n := range slice {
        if n == val {
            slice = append([]int{val}, append((slice)[:p], (slice)[p + 1:]...)...)
            break
        }
    }
    
    fmt.Println(slice)
} 

   
 
/*
run:
  
[4 6 12 45 98 77 32 5 1 99 100]
[32 4 6 12 45 98 77 5 1 99 100]
  
*/

 



answered Aug 16, 2020 by avibootz

Related questions

1 answer 176 views
1 answer 99 views
1 answer 102 views
1 answer 170 views
2 answers 220 views
...