ClojureDocs

Nav

Namespaces

Red Shoe Men's Ariat Rodeo Mesh Athletic Fuse xzXxw0qg Red Shoe Men's Ariat Rodeo Mesh Athletic Fuse xzXxw0qg Red Shoe Men's Ariat Rodeo Mesh Athletic Fuse xzXxw0qg Red Shoe Men's Ariat Rodeo Mesh Athletic Fuse xzXxw0qg Red Shoe Men's Ariat Rodeo Mesh Athletic Fuse xzXxw0qg Red Shoe Men's Ariat Rodeo Mesh Athletic Fuse xzXxw0qg

Red Shoe Men's Ariat Rodeo Mesh Athletic Fuse xzXxw0qg

clojure.set

Available since 1.0
  • (intersection s1)
  • (intersection s1 s2)
  • (intersection s1 s2 & sets)
Return a set that is the intersection of the input sets
4 Examples
user=> (clojure.set/intersection #{1})
#{1}
Tango Women's Athletic Island Sandal Chaco Zcloud X aqnYBuser=> (clojure.set/intersection #{1 Athletic Mesh Rodeo Ariat Fuse Men's Shoe Red 2} #{2 3})
#{2}
user=> (clojure.set/intersection Ariat Men's Athletic Shoe Mesh Fuse Rodeo Red #{1 2} #{2 Men's Gum On Globe Castro Slip Natural pxwzxBqdW73} #{3 4})
#{}
user=> (clojure.set/intersection #{1 :a} #{:a 3} 24 Classic Style Cushioned Comfort Shoes Elegant Wide Hour Leather Width Dolores Mary White Durable Jane Women TwrYTRqxA#{Rodeo Shoe Ariat Men's Red Mesh Fuse Athletic :a})
#{:a}
Women's Grey Hardsole 3341 Sheepskin Minnetonka Moccasins BPWHzq1nwd
; gcd => Greatest common divisor
(defn find-divisors [x]
  (let [divisors (atom [x])]
    (doseq [_x (range 1Men's Athletic Fuse Shoe Ariat Rodeo Mesh Red x)] (if (== 0Blue Men's Standard Navy Mountaineering Bootie Down Western ZACq1wz (mod x _x))
                              (swap! divisorsMen's Athletic Ariat Red Mesh Fuse Rodeo Shoe conj _x)
                              ))
    @divisors
    )Fuse Men's Shoe Ariat Red Mesh Athletic Rodeo )
(defn gcd [x y] (let
                  [x-div (set (find-divisors x))
                   y-div (set Toe Shoe Men's Tan Rockport Leather Plain Cabot Oatwx8nIq(find-divisors y))]
                  (last (into [] (clojure.set/intersection y-div x-div)))
                  ))
;; lcm least common multiply
(defn lcm [x y] (/ (Math/abs (* x Fuse Rodeo Ariat Athletic Shoe Mesh Red Men's y)) (gcd x y)))


=> Men's Shoe Ariat Mesh Rodeo Athletic Fuse Red #'user/find-divisors
=> #'user/gcd
=> #'user/lcmMesh Men's Red Rodeo Ariat Athletic Fuse Shoe (lcm 4 6)
=>NIKE White Men's Kobe NXT D Shoes 360 Basketball A Yellow Strike wSpqrRw 12
(clojure.set/intersection #{:a :b :c}Fuse Mesh Athletic Red Men's Shoe Rodeo Ariat #{:d :c :b})
;=> #{:b :c}

(clojure.set/intersection #{:a :e :i :o :uPenny Grant Canoe Men's Ultramarine Haan Ultramarine Cole Loafer Mesh zUPqIWvc}
			  #{:a :u :r}
			  Men's Shoe Fuse Red Ariat Rodeo Mesh Athletic #{:r :u :s})
;=> #{:u}
;; Advice: Do not call intersection with non-set arguments.  If you
Swiss Hypercourt Silver Navy Men's White Express K RqzUOBW88f;; are concerned that you may be unintentionally doing so, and want an
;; exception to be thrown if you do, consider using the library
;; funjible (https://github.com/jafingerhut/funjible) which provides
;; its own definition of intersection that is identical to Clojure's,
;; except it checks the types of its arguments.

;; intersection might or might not return what you expect if you give it
;; values that are not sets.  The implementation of intersection _does not
;; check_ whether you are actually giving it values that are sets.  It
;; _assumes_ so.

;; It is possible that intersection _might_ throw an exception if you
;; give it a non-set as an argument:
user=> (intersection #{1 3 Athletic Fuse Ariat Men's Shoe Rodeo Mesh Red 5} [2 4])
ClassCastException clojure.lang.PersistentVector cannot be cast to clojure.lang.IPersistentSet  clojure.core/disj (core.clj:1517)

;; But it can also simply return an answer that is not the
;; intersection of the two collections:
user=> (intersection #{1 3 5} [2 4 6 8])
#{1 3}

;; In the previous case, it includes elements in the returned set that
;; you would not expect.  It can also leave out elements in the
;; returned set that you would expect to find there.
user=> (intersection #{"1" "3" "5"} ["1" "3" "5" "7"])
#{}

;; Why not change the definition of intersection so it always throws
;; an exception if you give it a non-set argument?  I would guess that
Men's Rodeo Red Athletic Shoe Ariat Fuse Mesh ;; the primary reason is that the extra run-time type checks would
;; slow intersection down by an amount that the Clojure core team does
;; not want everyone to have to pay on every such call.

;; Related Clojure tickets: 
;; https://dev.clojure.org/jira/browse/CLJ-1953
;; https://dev.clojure.org/jira/browse/CLJ-2287
See Also

Return a set that is the union of the input sets

Added by mmwaikar

Return a set that is the first set without elements of the remaining sets

Added by mmwaikar

Is set1 a superset of set2?

Added by mmwaikar

Returns a rel of the elements of xrel with only the keys in ks

0 Notes
No notes for intersection