Elixir 1.7

MapSet




elixir

MapSet

कार्य जो सेट पर काम करते हैं।

MapSet Elixir में डेटा संरचना सेट करने के लिए "जाने" है। MapSet.new/0 का उपयोग करके एक सेट का निर्माण किया जा सकता है:

iex> MapSet.new()
#MapSet<[]>

एक सेट में किसी भी प्रकार के तत्व हो सकते हैं, और एक सेट में तत्व एक ही प्रकार के नहीं होते हैं। परिभाषा के अनुसार, सेट में डुप्लिकेट तत्व नहीं हो सकते हैं: किसी तत्व को उस सेट में सम्मिलित करना जहाँ वह पहले से मौजूद है, प्रविष्टि केवल एक नो-ऑप है।

iex> map_set = MapSet.new()
iex> MapSet.put(map_set, "foo")
#MapSet<["foo"]>
iex> map_set |> MapSet.put("foo") |> MapSet.put("foo")
#MapSet<["foo"]>

एक MapSet आंतरिक रूप से %MapSet{} संरचना का उपयोग करके MapSet है। जब भी किसी MapSet होने पर किसी पैटर्न को मैच करने की आवश्यकता हो तो इस संरचना का उपयोग किया जा सकता है:

iex> match?(%MapSet{}, MapSet.new())
true

ध्यान दें, हालांकि, संरचना क्षेत्र निजी हैं और उन्हें सीधे एक्सेस नहीं किया जाना चाहिए; इस मॉड्यूल में फ़ंक्शन का उपयोग सेट पर संचालन करने के लिए करें।

MapSet s का निर्माण अन्य संग्रह-प्रकार डेटा संरचनाओं से शुरू किया जा सकता है: उदाहरण के लिए, MapSet.new/1 या Enum.into/2

सारांश

प्रकार

t()
t(value)
value()

कार्य

हटाएं (map_set, मान)

map_set से map_set value

अंतर (map_set1, map_set2)

एक सेट देता है जो map_set1 के सदस्यों के बिना map_set2

तिरस्कार? (map_set1, map_set2)

जाँच करता है कि map_set1 और map_set2 में कोई सदस्य नहीं है

बराबर। (map_set1, map_set2)

जाँच करता है कि क्या दो सेट बराबर हैं

चौराहा (map_set, map_set)

एक सेट देता है जिसमें केवल सदस्य होते हैं जो map_set1 और map_set2 में समान होते हैं

सदस्य। (map_set, मान)

जाँच करता है कि map_set में value

new()

एक नया सेट लौटाता है

new(enumerable)

एक enumerable से एक सेट बनाता है

नया (गणना करने योग्य, बदलना)

परिवर्तन समारोह के माध्यम से एक गणना से एक सेट बनाता है

डाल (map_set, मूल्य)

यदि map_set पहले से ही यह नहीं है तो map_set में सम्मिलित करता है

size(map_set)

map_set में तत्वों की संख्या map_set

सबसेट। (map_set1, map_set2)

जाँच करता है कि map_set1 के सदस्य सभी map_set2 में map_set2

to_list(map_set)

map_set को एक सूची में परिवर्तित map_set है

संघ (map_set1, map_set2)

एक सेट देता है जिसमें map_set1 और map_set2 सभी सदस्य map_set2

प्रकार

टी ()

t() :: t(term())

टी (मूल्य) (अपारदर्शी)

t(value)

मूल्य ()

value() :: term()

कार्य

हटाएं (map_set, मान)

delete(t(val1), val2) :: t(val1) when val1: value(), val2: value()

map_set से map_set value

एक नया सेट लौटाता है, जो map_set की एक प्रति है, लेकिन बिना value

उदाहरण

iex> map_set = MapSet.new([1, 2, 3])
iex> MapSet.delete(map_set, 4)
#MapSet<[1, 2, 3]>
iex> MapSet.delete(map_set, 2)
#MapSet<[1, 3]>

अंतर (map_set1, map_set2)

difference(t(val1), t(val2)) :: t(val1)
when val1: value(), val2: value()

एक सेट देता है जो map_set1 के सदस्यों के बिना map_set2

उदाहरण

iex> MapSet.difference(MapSet.new([1, 2]), MapSet.new([2, 3, 4]))
#MapSet<[1]>

तिरस्कार? (map_set1, map_set2)

disjoint?(t(), t()) :: boolean()

जाँच करता है कि map_set1 और map_set2 में कोई सदस्य नहीं है।

उदाहरण

iex> MapSet.disjoint?(MapSet.new([1, 2]), MapSet.new([3, 4]))
true
iex> MapSet.disjoint?(MapSet.new([1, 2]), MapSet.new([2, 3]))
false

बराबर। (map_set1, map_set2)

equal?(t(), t()) :: boolean()

जाँच करता है कि क्या दो सेट बराबर हैं।

तत्वों के बीच तुलना ===/2 का उपयोग करके किया जाना चाहिए।

उदाहरण

iex> MapSet.equal?(MapSet.new([1, 2]), MapSet.new([2, 1, 1]))
true
iex> MapSet.equal?(MapSet.new([1, 2]), MapSet.new([3, 4]))
false

चौराहा (map_set, map_set)

intersection(t(val), t(val)) :: t(val) when val: value()

एक सेट देता है जिसमें केवल सदस्य होते हैं जो map_set1 और map_set2 में समान होते हैं।

उदाहरण

iex> MapSet.intersection(MapSet.new([1, 2]), MapSet.new([2, 3, 4]))
#MapSet<[2]>

iex> MapSet.intersection(MapSet.new([1, 2]), MapSet.new([3, 4]))
#MapSet<[]>

सदस्य। (map_set, मान)

member?(t(), value()) :: boolean()

जाँच करता है कि map_set में value

उदाहरण

iex> MapSet.member?(MapSet.new([1, 2, 3]), 2)
true
iex> MapSet.member?(MapSet.new([1, 2, 3]), 4)
false

नया()

new() :: t()

एक नया सेट लौटाता है।

उदाहरण

iex> MapSet.new()
#MapSet<[]>

नई (गणनीय)

new(Enum.t()) :: t()

एक enumerable से एक सेट बनाता है।

उदाहरण

iex> MapSet.new([:b, :a, 3])
#MapSet<[3, :a, :b]>
iex> MapSet.new([3, 3, 3, 2, 2, 1])
#MapSet<[1, 2, 3]>

नया (गणना करने योग्य, बदलना)

new(Enum.t(), (term() -> val)) :: t(val) when val: value()

परिवर्तन समारोह के माध्यम से एक गणना से एक सेट बनाता है।

उदाहरण

iex> MapSet.new([1, 2, 1], fn x -> 2 * x end)
#MapSet<[2, 4]>

डाल (map_set, मूल्य)

put(t(val), new_val) :: t(val | new_val)
when val: value(), new_val: value()

यदि map_set पहले से ही यह नहीं है तो map_set में सम्मिलित करता है।

उदाहरण

iex> MapSet.put(MapSet.new([1, 2, 3]), 3)
#MapSet<[1, 2, 3]>
iex> MapSet.put(MapSet.new([1, 2, 3]), 4)
#MapSet<[1, 2, 3, 4]>

आकार (map_set)

size(t()) :: non_neg_integer()

map_set में तत्वों की संख्या map_set

उदाहरण

iex> MapSet.size(MapSet.new([1, 2, 3]))
3

सबसेट। (map_set1, map_set2)

subset?(t(), t()) :: boolean()

जाँच करता है कि map_set1 के सदस्य सभी map_set2 में map_set2

यह फ़ंक्शन चेक करता है कि map_set1 का सबसेट है।

उदाहरण

iex> MapSet.subset?(MapSet.new([1, 2]), MapSet.new([1, 2, 3]))
true
iex> MapSet.subset?(MapSet.new([1, 2, 3]), MapSet.new([1, 2]))
false

to_list (map_set)

to_list(t(val)) :: [val] when val: value()

map_set को एक सूची में परिवर्तित map_set है।

उदाहरण

iex> MapSet.to_list(MapSet.new([1, 2, 3]))
[1, 2, 3]

संघ (map_set1, map_set2)

union(t(val1), t(val2)) :: t(val1 | val2)
when val1: value(), val2: value()

एक सेट देता है जिसमें map_set1 और map_set2 सभी सदस्य map_set2

उदाहरण

iex> MapSet.union(MapSet.new([1, 2]), MapSet.new([2, 3, 4]))
#MapSet<[1, 2, 3, 4]>