Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

إنشاء المجموعات

جزء من قسم المنطق والتدفق في رحلة Swift على Coddy — الدرس 18 من 56.

الـ Set هي مجموعة غير مرتبة من القيم الفريدة. نفس نوع العنصر لكل عضو، لا يسمح بالتكرار، ولا يوجد ترتيب تكرار يمكن التنبؤ به.

var colors: Set<String> = ["red", "green", "blue", "red"]
print(colors.count)              // 3 (يتم إسقاط "red" المكرر)

تعد إضافة توضيح النوع Set<String> إلزامية في الصيغة الحرفية لأن ["a", "b"] بمفردها سيتم استنتاجها على أنها Array.

ثلاث عمليات أساسية: contains و insert و remove. تُرجع العمليتان الأخيرتان معلومات حول ما إذا كان التغيير ذا مغزى.

colors.insert("yellow")         // يضيفه
colors.insert("red")            // موجود بالفعل، لا يوجد تأثير
colors.contains("green")        // صحيح
colors.remove("blue")           // يُرجع "blue" أو nil إذا كان مفقوداً

إنشاء مجموعة (Set) من مصفوفة (Array) يزيل التكرارات في خطوة واحدة:

let unique = Set([1, 2, 2, 3, 3, 3])
// 3 عناصر، الترتيب الدقيق غير مضمون
challenge icon

التحدي

مبتدئ

اقرأ سطراً واحداً من المدخلات: قائمة كلمات مفصولة بفاصلة (ربما تحتوي على تكرارات).

اطبع ثلاثة أسطر:

  1. عدد الكلمات الفريدة (استخدم Set)
  2. الكلمات الفريدة مرتبة أبجدياً، ومدمجة بـ ,
  3. true عندما تحتوي المدخلات على الكلمة swift، وإلا false (استخدم contains)

للمدخلات swift,ruby,go,swift,go,rust، المخرجات هي:

4
go,ruby,rust,swift
true

ورقة مرجعية

Set (المجموعة) – هي مجموعة غير مرتبة من القيم الفريدة. مطلوب تحديد النوع (Type annotation) عند استخدام صيغة مصفوفة ثابتة (array literal syntax):

var colors: Set<String> = ["red", "green", "blue", "red"]
print(colors.count) // 3 (تم حذف التكرار)

العمليات الأساسية:

colors.insert("yellow")      // يضيف عنصراً
colors.contains("green")     // true
colors.remove("blue")        // يعيد "blue" أو nil إذا كان مفقوداً

إنشاء مجموعة من مصفوفة لإزالة التكرار:

let unique = Set([1, 2, 2, 3, 3, 3]) // 3 عناصر

جرّب بنفسك

let words = readLine()!.components(separatedBy: ",")

// TODO: إزالة التكرار عبر Set، طباعة العدد، الترتيب والدمج، التحقق مما إذا كان يحتوي على "swift"
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس المنطق والتدفق