Skip to content

Instantly share code, notes, and snippets.

@marionette-of-u
Created August 22, 2012 23:58
Show Gist options
  • Select an option

  • Save marionette-of-u/3430720 to your computer and use it in GitHub Desktop.

Select an option

Save marionette-of-u/3430720 to your computer and use it in GitHub Desktop.
(ns org.program.main)
(defn less-vec [v n]
(cond
(= 0 (count v)) []
:else (let [i (first v)]
(concat (if (< i n) [i] []) (less-vec (rest v) n)))))
(defn greater-vec [v n]
(cond
(= 0 (count v)) []
:else (let [i (first v)]
(concat (if (>= i n) [i] []) (greater-vec (rest v) n)))))
(defn qsort [v]
(cond
(>= 1 (count v)) v
:else (let [p (first v)
r (rest v)]
(concat (qsort (less-vec r p)) [p] (qsort (greater-vec r p))))))
(defn -main [n]
(qsort n))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment