Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jneira/983323 to your computer and use it in GitHub Desktop.
Save jneira/983323 to your computer and use it in GitHub Desktop.
;; jneira's solution to Power Set
;; https://4clojure.com/problem/85
;; translated directly from algorithm described in wikipedia :-P
(fn P [S]
(if (empty? S) #{S}
(let [e (first S)
T (disj S e)
PT (P T)
F (fn [e T] (set (map #(conj % e) T)))]
(set (concat PT (F e PT))))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment