slices.SortFunc()
Сортирует срез по пользовательской функции сравнения.
Сигнатура
slices.SortFunc[S ~[]E, E any](s S, cmp func(a, b E) int)Сортирует срез, используя функцию cmp: она возвращает отрицательное число, если a < b, ноль при равенстве и положительное, если a > b.
s := []string{"bb", "a", "ccc"}
slices.SortFunc(s, func(a, b string) int {
return len(a) - len(b)
})
// s == [a bb ccc]