快速排序
快速排序算法的主要流程是
1、数列中挑出一个元素,称为”基准”,基准可以为序列中任意元素,一般取序列第1个元素
2、重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(相同的数可以到任何一边)。在这个分区结束之后,该基准就处于数列的中间位置。这个称为分区(partition)操作。
3、递归地把拆分的两个子序列进行排序。
package main
import (
"fmt"
"math/rand"
"time"
)
func RandArray(num int) []int {
arr := make([]int, num)
//以当前时间为随机数种子
rand.Seed(time.Now().Unix())
for i :=