Jump to content

Power set: Difference between revisions

→‎{{header|Clojure}}: added alternate solution
m (→‎{{header|Clojure}}: contrib -> math)
(→‎{{header|Clojure}}: added alternate solution)
Line 464:
user> (subsets S)
(() (1) (2) (3) (4) (1 2) (1 3) (1 4) (2 3) (2 4) (3 4) (1 2 3) (1 2 4) (1 3 4) (2 3 4) (1 2 3 4))</lang>
 
'''Alternate solution''', with no dependency on third-party library:
<lang Clojure>(defn powerset
[coll]
(reduce (fn [a x]
(set (concat a (map #(set (concat #{x} %)) a))))
#{#{}} coll))
 
(powerset #{1 2 3})</lang>
<lang Clojure>#{#{} #{1} #{2} #{1 2} #{3} #{1 3} #{2 3} #{1 2 3}}</lang>
 
=={{header|CoffeeScript}}==
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.