المسارات
/
Julia
Julia
/
المنهج
/
المجموعات
ال

المجموعات في Julia

1 تمرين

نبذة عن المجموعات

Set هي مجموعة من العناصر لها الخصائص التالية:

  • غير مرتبة.
  • العناصر فريدة، لذا تُتجاهل محاولات إضافة عناصر مكررة بصمت.
  • تدعم العديد من العمليات الشائعة في المجموعات الرياضية.

أنشئها باستخدام الباني Set()، مع تمرير أي مُكرِّر كمعامل.

julia> s1 = Set(1:4)
Set{Int64} with 4 elements:
  4
  2
  3
  1

أضف عناصر جديدة باستخدام push!() (كما هو الحال مع المصفوفات)، وأزلها باستخدام delete!().

julia> push!(s1, 5)
Set{Int64} with 5 elements:
  5
  4
  2
  3
  1

# Duplicates are ignored
julia> push!(s1, 3)
Set{Int64} with 5 elements:
  5
  4
  2
  3
  1

julia> delete!(s1, 5)
Set{Int64} with 4 elements:
  4
  2
  3
  1

julia> length(s1)  # length counts entries, despite the non-sequential type
4

عمليات المجموعات

كما هو الحال مع عدة أنواع أخرى من المجموعات، تحقق من العضوية باستخدام العامل in أو ∈ (استخدم \in ثم اضغط Tab للحصول على الرمز).

julia> 3 ∈ s1
true

تدعم العمليات التالية على أزواج من المجموعات (تظهر اختصارات رمز العامل بين الأقواس الهلالية).

  • union(A, B) أو A ∪ B (\cup): جميع العناصر الموجودة في A أو B أو كليهما.
  • intersect(A, B) أو A ∩ B (\cap): جميع العناصر المشتركة بين A و B.
  • setdiff(A, B) (بلا رمز): العناصر الموجودة في A وليس في B.
  • symdiff(A, B) (بلا رمز): العناصر الموجودة في A أو B ولكن ليس في كليهما.
  • issubset(A, B) أو A ⊆ B (\subseteq) أو B ⊇ A (\supseteq): true إذا كانت جميع العناصر في A موجودة أيضًا في B.
  • issetequal(A, B) (بلا رمز): true إذا احتوت A و B على العناصر نفسها بالضبط.
  • isdisjoint(A, B) (بلا رمز): true إذا لم تحتوِ A و B على أي عناصر مشتركة (أي أن التقاطع فارغ).
s1 = Set(1:4)
s2 = Set(3:6)

julia> s1 ∪ s2  # union
Set{Int64} with 6 elements:
  5
  4
  6
  2
  3
  1

julia> s1 ∩ s2  # intersect
Set{Int64} with 2 elements:
  4
  3
  
julia> setdiff(s1, s2)
Set{Int64} with 2 elements:
  2
  1

julia> symdiff(s1, s2)
Set{Int64} with 4 elements:
  5
  6
  2
  1
  
julia> s1 ⊇ s2  # issubset
false

هناك أيضًا نسخ مُعدِّلة لكثير من هذه العمليات، بإضافة ! إلى اسم الدالة. راجع الدليل للحصول على قائمة كاملة بالدوال.

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة

تعلّم المجموعات