package main
import "fmt"
func quickSort(arr []int) []int {
length := len(arr)
if length < 2 {
return arr
}
mid := arr[0]
var low, high = make([]int, 0), make([]int, 0)
for i := 1; i < length; i++ {
if arr[i] > mid {
high = append(high, arr[i])
} else {
low = append(low, arr[i])
}
}
lowSlice := quickSort(low)
highSlice := quickSort(high)
return append(append(lowSlice, mid), highSlice...)
}
func main() {
s := []int{22, 4, 7, 8, 8, 6, 3, 10, 9, 88, 66, 22}
fmt.Println(quickSort(s))
}
golang 实现快速排序
最新推荐文章于 2025-09-29 01:54:52 发布
本文介绍了使用Go语言实现快速排序算法的详细步骤,通过递归将数组分为小于和大于基准值的两部分,最终达到排序的目的。示例代码展示了如何对包含重复元素的整数数组进行排序,适用于理解快速排序的基本原理和实践操作。

653

被折叠的 条评论
为什么被折叠?



