/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
* 将给定数组排序
* @param arr int整型一维数组 待排序的数组
* @return int整型一维数组
*/
func MySort( arr []int ) []int {
// write code here
l := len(arr)
if l == 0{
return arr
}
fastSort(arr, 0, l-1)
return arr
}
func fastSort(arr []int, l, r int) {
if l >= r {
return
}
left := l
right := r
target := arr[l]
for l< r {
for l < r && target <= arr[r] {
r--
}
arr[l] = arr[r]
for l<r && target >= arr[l] {
l++
}
arr[r] = arr[l]
}
arr[l] = target
fastSort(arr, left, l-1)
fastSort(arr, l+1, right)
}