summaryrefslogtreecommitdiff
path: root/src/code/2/qs.exs
diff options
context:
space:
mode:
Diffstat (limited to 'src/code/2/qs.exs')
-rw-r--r--src/code/2/qs.exs10
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