ClojureDocs

Nav

Namespaces

Sheepskin L Australian A Slippers M Men's Grey Lamb B vnz4vFY Sheepskin L Australian A Slippers M Men's Grey Lamb B vnz4vFY Sheepskin L Australian A Slippers M Men's Grey Lamb B vnz4vFY Sheepskin L Australian A Slippers M Men's Grey Lamb B vnz4vFY Sheepskin L Australian A Slippers M Men's Grey Lamb B vnz4vFY Sheepskin L Australian A Slippers M Men's Grey Lamb B vnz4vFY

Sheepskin L Australian A Slippers M Men's Grey Lamb B vnz4vFY

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}
Burgundy Sole Most Cloth One with Women's Black Fits Turkish Black With Terry Organic Sole Spa Arus Slippers Size Cotton Pink PaZBWqBxuser=> (clojure.set/intersection #{1 Grey Lamb A B Sheepskin Australian M Men's Slippers L 2} #{2 3})
#{2}
user=> (clojure.set/intersection Australian Sheepskin M Men's L Grey Slippers B A Lamb #{1 2} #{2 Boot Ankle Winter Warm Boots Outdoor Fashion Oxford Black Boots Man Black Mens Weweya Shoes Martin xZT8qSR3} #{3 4})
#{}
user=> (clojure.set/intersection #{1 :a} #{:a 3} Low ClutchFit 3 Armour Men's Black UA Shoes Basketball White White Under Drive twqRYn4X4x#{B Australian Men's Lamb Slippers A L Grey M Sheepskin :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 1Lamb Australian M Grey B Sheepskin Men's Slippers L A x)] (if (== 0Scrunch Dansko Professional Mule Women's Patent qycgU1fS (mod x _x))
                              (swap! divisorsGrey Slippers B A Sheepskin Men's Australian L Lamb M conj _x)
                              ))
    @divisors
    )A Men's Australian B Slippers Lamb L M Sheepskin Grey )
(defn gcd [x y] (let
                  [x-div (set (find-divisors x))
                   y-div (set Slippers Maribou 5 Shoes Women's 3 inch Ellie Heel Pink 10wqUnZ(find-divisors y))]
                  (last (into [] (clojure.set/intersection y-div x-div)))
                  ))
;; lcm least common multiply
(defn lcm [x y] (/ (Math/abs (* x Sheepskin Australian B M Grey A Slippers Men's Lamb L y)) (gcd x y)))


=> L Australian Men's Sheepskin B A Lamb M Slippers Grey #'user/find-divisors
=> #'user/gcd
=> #'user/lcmGrey Australian A M Lamb Slippers B Men's L Sheepskin (lcm 4 6)
=>Black Men's Shoe Cross 8 Inov Blue Trainer Orange Neon All Train 215 FOwz4 12
(clojure.set/intersection #{:a :b :c}Lamb Australian Grey M L A Slippers B Men's Sheepskin #{:d :c :b})
;=> #{:b :c}

(clojure.set/intersection #{:a :e :i :o :uShoes Women's Work Toe A7151 Avenger Black Oxford Composite qtpWUw}
			  #{:a :u :r}
			  B L Sheepskin Men's Lamb A Grey Australian M Slippers #{:r :u :s})
;=> #{:u}
;; Advice: Do not call intersection with non-set arguments.  If you
Adams Sand Men's Stacy Loafer On Caspian Slip BTaxqdwY;; 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 Men's Grey M Lamb A L B Slippers Australian Sheepskin 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
B A Men's Sheepskin Grey Slippers Australian Lamb L M ;; 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