object QuickSort {
def main(args: Array[String]) = {
val a = Array(5, 3, 2, 1, 20, 46, 9, 39 ,219)
sort(a).foreach(n=> (print(n), print (" " )))
}
def sort(a:Array[Int]): Array[Int] = {
if (a.length < 2) a
else {
val pivot = a(a.length / 2)
sort (a filter (pivot>)) ++ (a filter (pivot == )) ++
sort (a filter(pivot <))
}
}
}
首先,我正在做一个作业,我应该解释 Scala 中的各种排序算法。我对 Scala 比较陌生。我已经离开了另一个帖子,我得到了回答,这对我有帮助。我的问题在于这 3 行:排序方法中的这 2 行(我无法理解过滤器、++ 和 == 的使用)
sort (a filter (pivot>)) ++ (a filter (pivot == )) ++
sort (a filter(pivot <))
以及 main 方法中的这一行(我无法理解 n 的用户和 foreach 一词)
sort(a).foreach(n=> (print(n), print (" " )))
我尝试用谷歌搜索这些问题,但没有得到任何帮助。不胜感激,
谢谢