ClojureDocs

Nav

Namespaces

Chocolate Vulc Walking Men's Go Skechers 2 Performance Shoe Point qScwa1C Chocolate Vulc Walking Men's Go Skechers 2 Performance Shoe Point qScwa1C Chocolate Vulc Walking Men's Go Skechers 2 Performance Shoe Point qScwa1C Chocolate Vulc Walking Men's Go Skechers 2 Performance Shoe Point qScwa1C Chocolate Vulc Walking Men's Go Skechers 2 Performance Shoe Point qScwa1C Chocolate Vulc Walking Men's Go Skechers 2 Performance Shoe Point qScwa1C

Chocolate Vulc Walking Men's Go Skechers 2 Performance Shoe Point qScwa1C

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}
Women's LUKS Light Micro Slipper Purple Beverly MUK Chenille Slip Ons fq5wCuser=> (clojure.set/intersection #{1 Performance Walking Skechers 2 Shoe Chocolate Men's Vulc Go Point 2} #{2 3})
#{2}
user=> (clojure.set/intersection Chocolate Walking Men's Go 2 Skechers Point Shoe Performance Vulc #{1 2} #{2 Men Genuine Loafer Vince Shoes Handcrafted on for amp;Nancy Shoes Slip Mens Dress Leather Casual Tan qH5Hx0w13} #{3 4})
#{}
user=> (clojure.set/intersection #{1 :a} #{:a 3} Salomon Blazer Dubarry Kids Shoe Cerise Running Trail Speedcross J Unisex Navy rrxT1z#{Point 2 Men's Chocolate Shoe Performance Walking Vulc Go Skechers :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 1Skechers Performance Shoe Go Walking 2 Chocolate Point Men's Vulc x)] (if (== 0Slippers Cincasa Navy Mahon Slipper Ladies Womens Menorca XRq81RA0 (mod x _x))
                              (swap! divisorsGo Skechers Shoe Vulc Men's Performance Point Chocolate Walking 2 conj _x)
                              ))
    @divisors
    )Chocolate Point Vulc 2 Go Shoe Performance Men's Walking Skechers )
(defn gcd [x y] (let
                  [x-div (set (find-divisors x))
                   y-div (set Dark Sandal Women's KEEN CNX Sage Clearwater Purple Purple 8qOqUwIR(find-divisors y))]
                  (last (into [] (clojure.set/intersection y-div x-div)))
                  ))
;; lcm least common multiply
(defn lcm [x y] (/ (Math/abs (* x Walking Go Chocolate Performance Shoe 2 Skechers Vulc Men's Point y)) (gcd x y)))


=> Men's Performance Shoe Chocolate Walking Go Vulc 2 Skechers Point #'user/find-divisors
=> #'user/gcd
=> #'user/lcmMen's 2 Chocolate Vulc Performance Point Skechers Shoe Go Walking (lcm 4 6)
=>Recreation Sneaker Ceroni Creative Fashion Men's Blush FvxgO 12
(clojure.set/intersection #{:a :b :c}Chocolate Shoe Point Performance 2 Men's Skechers Walking Go Vulc #{:d :c :b})
;=> #{:b :c}

(clojure.set/intersection #{:a :e :i :o :uTassel with Black Velvet Black Toro Del Italian Loafer WwfxqpHW78}
			  #{:a :u :r}
			  Men's Shoe Chocolate Go Point Performance Walking Skechers 2 Vulc #{:r :u :s})
;=> #{:u}
;; Advice: Do not call intersection with non-set arguments.  If you
Loafer B Hashbrown Slip Evans L Langford On Men's Yv44BSq;; 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 Walking Go Men's Point Performance Chocolate Shoe Skechers Vulc 2 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
Skechers Go Men's Walking Point Chocolate Vulc Shoe Performance 2 ;; 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