diff options
Diffstat (limited to 'src/code/2/qs.exs')
-rw-r--r-- | src/code/2/qs.exs | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/code/2/qs.exs b/src/code/2/qs.exs index 38c90c9..5e244d3 100644 --- a/src/code/2/qs.exs +++ b/src/code/2/qs.exs @@ -1,10 +1,13 @@ defmodule Quicksort do def sort([]), do: [] def sort([h|t]) do - lower = t |> Enum.filter(&(&1 <= h)) - upper = t |> Enum.filter(&(&1 > h)) + {lower, upper} = t |> Enum.partition(&(&1 <= h)) sort(lower) ++ [h] ++ sort(upper) end end -1..10 |> Enum.shuffle |> Quicksort.sort |> IO.inspect +1..10 + |> Enum.shuffle + |> IO.inspect + |> Quicksort.sort + |> IO.inspect |