Elixir实现快速排序
defmodule QuickSort do
def sort([]), do: []
def sort([pivot|rest]), do: sort(Enum.filter(rest, fn(x) -> x < pivot end)) ++ [pivot] ++ sort(Enum.filter(rest, fn(x) -> x >= pivot end))
end
QuickSort.sort([5,4,3,2,1])
defmodule QuickSort do
def sort([]), do: []
def sort([pivot|rest]), do: sort(Enum.filter(rest, fn(x) -> x < pivot end)) ++ [pivot] ++ sort(Enum.filter(rest, fn(x) -> x >= pivot end))
end
QuickSort.sort([5,4,3,2,1])