快速排序是效率比较高的一种排序算法,其思想主要是递归
package main
import "fmt"
func QuickSort(left int, right int, arr *[6]int) {
l := left
r := right
pivot := arr[(left + right) / 2]
for ; l < r; {
for ; arr[l] < pivot; {
l++
}
for ; arr[r] > pivot; {
r--
}
if l >= r {
break
}
arr[r], arr[l] = arr[l], arr[r]
if arr[l] == pivot {
r--
}
if arr[r] == pivot {
l++
}
}
if l==r {
l++
r--
}
if left < r {
QuickSort(left, r, arr)
}
if right > l {
QuickSort(l, right, arr)
}
}
func main(){
arr := [6]int{-9, 78, 0, 23, -57, 70}
fmt.Println(arr)
QuickSort(0, len(arr) - 1, &arr)
fmt.Println(arr)
}
输出:
[-9 78 0 23 -57 70]
[-57 -9 0 23 70 78]
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。