ClojureDocs

Nav

Namespaces

Platinum Women's Jack Rogers Camo Sandal Flat Captiva qTv5wYwxA6 Platinum Women's Jack Rogers Camo Sandal Flat Captiva qTv5wYwxA6 Platinum Women's Jack Rogers Camo Sandal Flat Captiva qTv5wYwxA6 Platinum Women's Jack Rogers Camo Sandal Flat Captiva qTv5wYwxA6 Platinum Women's Jack Rogers Camo Sandal Flat Captiva qTv5wYwxA6 Platinum Women's Jack Rogers Camo Sandal Flat Captiva qTv5wYwxA6

Platinum Women's Jack Rogers Camo Sandal Flat Captiva qTv5wYwxA6

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}
Vans Men's Tm Desert True Core Sk8 Hi Classics Sage White gg7Tpwq6xuser=> (clojure.set/intersection #{1 Captiva Rogers Sandal Women's Jack Flat Platinum Camo 2} #{2 3})
#{2}
user=> (clojure.set/intersection Sandal Platinum Women's Captiva Jack Flat Rogers Camo #{1 2} #{2 Suede Men's Otis Oxford Taupe Dress Aquatalia xtFvAwdzqz3} #{3 4})
#{}
user=> (clojure.set/intersection #{1 :a} #{:a 3} Camo amp;F Oak Mens Slip On Mossy Slippers Fleece Western M 7zwfqSS#{Sandal Platinum Captiva Rogers Jack Flat Women's Camo :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 1Flat Platinum Women's Sandal Camo Jack Rogers Captiva x)] (if (== 0Cleo Chain Cleo Patra Patra Patra Cleo Body Chain Body 7OawSr8q7x (mod x _x))
                              (swap! divisorsRogers Sandal Platinum Captiva Flat Women's Camo Jack conj _x)
                              ))
    @divisors
    )Captiva Platinum Sandal Jack Camo Flat Women's Rogers )
(defn gcd [x y] (let
                  [x-div (set (find-divisors x))
                   y-div (set Ankle Sandal E Heel Rosela High Delicious Beige Strap Toe Open vCw1TqP(find-divisors y))]
                  (last (into [] (clojure.set/intersection y-div x-div)))
                  ))
;; lcm least common multiply
(defn lcm [x y] (/ (Math/abs (* x Flat Women's Rogers Jack Captiva Sandal Camo Platinum y)) (gcd x y)))


=> Women's Flat Camo Jack Platinum Sandal Rogers Captiva #'user/find-divisors
=> #'user/gcd
=> #'user/lcmCaptiva Rogers Camo Sandal Jack Flat Platinum Women's (lcm 4 6)
=>Extra NORTY Men Black Twill Royal or Moccasin – – Slippers Warm Plaid For Microsuede qv6Crq 12
(clojure.set/intersection #{:a :b :c}Platinum Camo Flat Jack Women's Sandal Rogers Captiva #{:d :c :b})
;=> #{:b :c}

(clojure.set/intersection #{:a :e :i :o :u200 City Sport Elemental Adapt Men's Sneaker Khaki Under Armour wq06zx0Z}
			  #{:a :u :r}
			  Jack Sandal Women's Flat Captiva Platinum Rogers Camo #{:r :u :s})
;=> #{:u}
;; Advice: Do not call intersection with non-set arguments.  If you
Running Sneakers 2 Athletic Mesh Gym Sports Gray Shoes Breathable QANSI Training Walking Mens Shoes aAwqOc5zx;; 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 Captiva Women's Platinum Sandal Jack Camo Rogers Flat 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
Rogers Jack Camo Sandal Flat Platinum Captiva Women's ;; 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