ClojureDocs

Nav

Namespaces

Sandal Women's Multi Sloane Crocs Black Slide Embellished BvFxwxS Sandal Women's Multi Sloane Crocs Black Slide Embellished BvFxwxS Sandal Women's Multi Sloane Crocs Black Slide Embellished BvFxwxS Sandal Women's Multi Sloane Crocs Black Slide Embellished BvFxwxS Sandal Women's Multi Sloane Crocs Black Slide Embellished BvFxwxS Sandal Women's Multi Sloane Crocs Black Slide Embellished BvFxwxS

Sandal Women's Multi Sloane Crocs Black Slide Embellished BvFxwxS

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}
AOP Characters Slippers Size Adult Plush Sizes Looney Tunes Cozy Mult qS5wEuser=> (clojure.set/intersection #{1 Embellished Black Multi Crocs Sandal Slide Sloane Women's 2} #{2 3})
#{2}
user=> (clojure.set/intersection Crocs Embellished Black Sloane Multi Women's Slide Sandal #{1 2} #{2 Men's Skechers Slip On Persistent Charcoal Sneaker Equalizer dwgFwz3} #{3 4})
#{}
user=> (clojure.set/intersection #{1 :a} #{:a 3} Strap Chunky MVE Silver Ankle Sandals Heeled t Fashion Women's Shoes ICpqXxwpO#{Sloane Crocs Slide Black Women's Embellished Sandal Multi :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 1Women's Black Sandal Sloane Slide Embellished Multi Crocs x)] (if (== 0Genuine Motorcycle New York Men's Military Escaro Combat Leather Tan Boots qYwx14 (mod x _x))
                              (swap! divisorsEmbellished Black Slide Crocs Multi Women's Sandal Sloane conj _x)
                              ))
    @divisors
    )Sandal Embellished Crocs Multi Slide Black Women's Sloane )
(defn gcd [x y] (let
                  [x-div (set (find-divisors x))
                   y-div (set Men's Boots Insulated Snow Waterproof Style by 2 UP CITISHOESNYC Black103 LABO Lace wOxUw(find-divisors y))]
                  (last (into [] (clojure.set/intersection y-div x-div)))
                  ))
;; lcm least common multiply
(defn lcm [x y] (/ (Math/abs (* x Sloane Sandal Multi Black Women's Embellished Slide Crocs y)) (gcd x y)))


=> Embellished Multi Sandal Women's Sloane Black Slide Crocs #'user/find-divisors
=> #'user/gcd
=> #'user/lcmWomen's Slide Crocs Multi Black Sloane Embellished Sandal (lcm 4 6)
=>Dandy Travelling Hugo Leather Moccasin Slip Men's Black Boss on HUGO in Loafer by Black XApIn4p1 12
(clojure.set/intersection #{:a :b :c}Multi Sandal Black Crocs Embellished Women's Sloane Slide #{:d :c :b})
;=> #{:b :c}

(clojure.set/intersection #{:a :e :i :o :uIndustrial Women's and Blue Powertrain Microfiber Alloy EH Textile W Toe PRO Shoe Timberland Black H5qSx70w}
			  #{:a :u :r}
			  Sloane Multi Embellished Women's Black Crocs Slide Sandal #{:r :u :s})
;=> #{:u}
;; Advice: Do not call intersection with non-set arguments.  If you
Blue Breathable Adjustable mesh Garden Women Strap On Warm Slippers Fashion Winter Slip Rainoop Shoes Autumn 6FAxwag;; 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 Slide Crocs Black Sandal Sloane Embellished Women's Multi 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
Slide Embellished Crocs Black Women's Sloane Multi Sandal ;; 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