package main import ( "fmt" "sort" ) type node struct { weight int } func main() { var nodes []node n1 := node{weight: 0} n2 := node{weight: 0} n3 := node{weight: 326} n4 := node{weight: 4} nodes = append(nodes, n1) nodes = append(nodes, n2) nodes = append(nodes, n3) nodes = append(nodes, n4) fmt.Println(nodes) sort.Slice(nodes, func(j, k int) bool { return nodes[j].weight > nodes[k].weight }) fmt.Println(nodes) }