diff options
Diffstat (limited to 'src/code/2/qs.exs')
-rw-r--r-- | src/code/2/qs.exs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/code/2/qs.exs b/src/code/2/qs.exs new file mode 100644 index 0000000..38c90c9 --- /dev/null +++ b/src/code/2/qs.exs @@ -0,0 +1,10 @@ +defmodule Quicksort do + def sort([]), do: [] + def sort([h|t]) do + lower = t |> Enum.filter(&(&1 <= h)) + upper = t |> Enum.filter(&(&1 > h)) + sort(lower) ++ [h] ++ sort(upper) + end +end + +1..10 |> Enum.shuffle |> Quicksort.sort |> IO.inspect |