Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
6
Task/Power-set/Clojure/power-set-1.clj
Normal file
6
Task/Power-set/Clojure/power-set-1.clj
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
(use '[clojure.math.combinatorics :only [subsets] ])
|
||||
|
||||
(def S #{1 2 3 4})
|
||||
|
||||
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))
|
||||
6
Task/Power-set/Clojure/power-set-2.clj
Normal file
6
Task/Power-set/Clojure/power-set-2.clj
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
(defn powerset [coll]
|
||||
(reduce (fn [a x]
|
||||
(into a (map #(conj % x)) a))
|
||||
#{#{}} coll))
|
||||
|
||||
(powerset #{1 2 3})
|
||||
1
Task/Power-set/Clojure/power-set-3.clj
Normal file
1
Task/Power-set/Clojure/power-set-3.clj
Normal file
|
|
@ -0,0 +1 @@
|
|||
#{#{} #{1} #{2} #{1 2} #{3} #{1 3} #{2 3} #{1 2 3}}
|
||||
10
Task/Power-set/Clojure/power-set-4.clj
Normal file
10
Task/Power-set/Clojure/power-set-4.clj
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
(defn powerset [coll]
|
||||
(let [cnt (count coll)
|
||||
bits (Math/pow 2 cnt)]
|
||||
(for [i (range bits)]
|
||||
(for [j (range i)
|
||||
:while (< j cnt)
|
||||
:when (bit-test i j)]
|
||||
(nth coll j)))))
|
||||
|
||||
(powerset [1 2 3])
|
||||
1
Task/Power-set/Clojure/power-set-5.clj
Normal file
1
Task/Power-set/Clojure/power-set-5.clj
Normal file
|
|
@ -0,0 +1 @@
|
|||
(() (1) (2) (1 2) (3) (1 3) (2 3) (1 2 3))
|
||||
Loading…
Add table
Add a link
Reference in a new issue