具体过程:黑色标记代表左指针,红色标记代表右指针,蓝色标记代表中间值。(依次从左往向下)
//QuickSort 快速排序 func QuickSort(left int,right 7]int) { l := left r := right pivot := arr[(left+right)/2] tmp := 0 for l < r { for arr[l] < pivot { l++ } for arr[r] > pivot { r--if l >= r { break } tmp = arr[l] arr[l] = arr[r] arr[r] = tmp if arr[l] ==if arr[r] == } } if l == r { l++ r-- } if left < r { QuickSort(left,r,arr) } if right > l { QuickSort(l,right,arr) } }