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

رياضيات - اتحاد الـ HashSets

جزء من قسم Logic & Flow في رحلة Java على Coddy — الدرس 29 من 59.

إنّ اتحاد مجموعتين هو مجموعة جديدة تحتوي على كل عنصر موجود في أي من المجموعتين. في لغة Java، يمكنك حساب اتحاد مجموعتين من نوع HashSets باستخدام التابع addAll(). يقوم هذا التابع بإضافة جميع العناصر من مجموعة إلى أخرى (مع تجاهل التكرارات).

أولاً، قم بإنشاء مجموعتي HashSet جديدتين:

HashSet<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
HashSet<Integer> set2 = new HashSet<>();
set2.add(2);
set2.add(3);

استخدم التابع addAll() لإضافة عناصر من المجموعة الثانية إلى مجموعة الاتحاد الخاصة بك.

// أولاً، قم بإنشاء HashSet جديد باستخدام set1
HashSet<Integer> unionSet = new HashSet<>(set1);
unionSet.addAll(set2); // ثم، أضف جميع العناصر من set2
System.out.println("Union: " + unionSet);
// المخرجات: [1, 2, 3] (قد يختلف الترتيب)
challenge icon

التحدي

سهل

أنشئ دالة باسم <strong>unionSets</strong> تأخذ اثنين من HashSets من الأعداد الصحيحة كمدخلات، وتحسب اتحادهما، وتطبعه بالتنسيق التالي:

Union: [1, 2, 3]

ورقة مرجعية

يحتوي اتحاد مجموعتين على كل عنصر موجود في أي من المجموعتين. استخدم addAll() لحساب اتحاد مجموعتين من نوع HashSet:

HashSet<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
HashSet<Integer> set2 = new HashSet<>();
set2.add(2);
set2.add(3);

// إنشاء الاتحاد عن طريق نسخ المجموعة الأولى وإضافة جميع العناصر من الثانية
HashSet<Integer> unionSet = new HashSet<>(set1);
unionSet.addAll(set2);
System.out.println("Union: " + unionSet);
// المخرجات: [1, 2, 3] (قد يختلف الترتيب)

جرّب بنفسك

import java.util.HashSet;
import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;

public class Main {
    public static void unionSets(HashSet<Integer> set1, HashSet<Integer> set2) {
        // اكتب كودك هنا
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // قراءة سلسلة JSON التي تمثل المجموعة الأولى (مثال: [1,2])
        String set1String = scanner.nextLine();
        // قراءة سلسلة JSON التي تمثل المجموعة الثانية (مثال: [2,3])
        String set2String = scanner.nextLine();

        Type setType = new TypeToken<HashSet<Integer>>(){}.getType();
        HashSet<Integer> set1 = new Gson().fromJson(set1String, setType);
        HashSet<Integer> set2 = new Gson().fromJson(set2String, setType);
        
        unionSets(set1, set2);
    }
}
quiz iconاختبر نفسك

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

جميع دروس Logic & Flow