func quickSort(s []int) []int {
if len(s) < 2 {
return s
}
var less []int
var greater []int
p := s[0]
for _, v := range s[1:] {
if v <= p {
less = append(less, v)
}
if v > p {
greater = append(greater, v)
}
}
return append(append(quickSort(less), []int{p}...), quickSort(greater)...)
}