March 2014 update
This commit is contained in:
parent
09687c4926
commit
a25938f123
1846 changed files with 21876 additions and 5203 deletions
|
|
@ -1,14 +1,15 @@
|
|||
(defn transpose [xs]
|
||||
(loop [transposed [], remaining xs]
|
||||
(if (empty? remaining)
|
||||
transposed
|
||||
(recur
|
||||
(conj transposed (map #(first %) remaining))
|
||||
(filter #(not-empty %) (map #(rest %) remaining)))) ))
|
||||
(loop [ret [], remain xs]
|
||||
(if (empty? remain)
|
||||
ret
|
||||
(recur (conj ret (map first remain))
|
||||
(filter not-empty (map rest remain))))))
|
||||
|
||||
(defn bead-sort [xs]
|
||||
(map #(reduce + %)
|
||||
(transpose
|
||||
(transpose (map #(replicate % 1) xs)))))
|
||||
(->> xs
|
||||
(map #(repeat 1 %))
|
||||
transpose
|
||||
transpose
|
||||
(map #(reduce + %))))
|
||||
|
||||
(println (bead-sort [5 2 4 1 3 3 9]))
|
||||
(-> [5 2 4 1 3 3 9] bead-sort println)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue