func QuickSort(dataList []int) []int {
return DFSQuickSort(dataList,0,len(dataList)-1)
}
func DFSQuickSort(dataList []int,left,right int) []int {
if left >= right{
return dataList
}
i, j := left,right
temp := dataList[i]
for(i != j){
for(temp < dataList[j]) && i<j{
j--
}
for(temp > dataList[i]) && i<j{
i++
}
if i < j {
dataList[i], dataList[j] = dataList[j], dataList[i]
}
}
//交换基数
temp,dataList[i] = dataList[i],temp
DFSQuickSort(dataList,left, i-1)
DFSQuickSort(dataList,i+1,right)
return dataList
}
golang 快速排序
最新推荐文章于 2026-01-05 19:45:00 发布
2585

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



