S
Size: a a a
S
М
S
S
S
S
М
S
S
М
М
S
S
def QuickSort[T](xs: List[T], order: (T, T) => Boolean): List[T] = xs match {
case Nil => List()
case x :: Nil => List(x)
case _ =>
val base = xs(xs.length / 2)
val lt = xs.filter(order(_, base))
val gt = xs.filter(order(base, _))
val eq = xs.filter(!order(base, _)).filter(!order(_, base))
QuickSort(lt, order) ::: eq ::: QuickSort(gt, order)
}
S
🐈П
S
BT
S
S
S