object Test extends App { def quickSort(arr: Array[Int], low: Int, high: Int): Int = { val p = arr(low) var mid = low; for (i <- low + 1 to high) { if (arr(i) < p) { mid += 1 swap(arr, i, mid) } } swap(arr, low, mid) return mid; } def swap(arr: Array[Int], a: Int, b: Int) = { val mid = arr(a) arr(a) = arr(b) arr(b) = mid } def quickSortMerge(a: Array[Int], low: Int, high: Int): Unit = { if(low < high){ val mid = quickSort(a,low,high) quickSortMerge(a,low,mid-1) quickSortMerge(a,mid+1,high) } } val arr = Array(2,4,5,11,3,5) quickSortMerge(arr,0,arr.size-1) println(util.Arrays.toString(arr)) }
快速排序 scala 版 (quick sort)
最新推荐文章于 2019-11-22 12:07:29 发布