Menu
CoddyTech
flag Ar iconالعربيةdown icon

Intersection of Two Arrays

لديك مصفوفتان من الأعداد الصحيحة، nums1 وnums2. أعد كل قيمة تظهر في المصفوفتين، مرتبة ترتيبًا تصاعديًا. تظهر كل قيمة مشتركة في الإجابة مرة واحدة، مهما تكرر ظهورها في أي من المصفوفتين.

الدالة

intersection(nums1: integer-array, nums2: integer-array) → integer-array
nums1integer-array
القائمة الأولى من الأعداد الصحيحة
nums2integer-array
القائمة الثانية من الأعداد الصحيحة
تُرجعinteger-array
القيم الموجودة في كلتا القائمتين، مرة واحدة لكل قيمة، بترتيب تصاعدي

القيود

  • 1 ≤ nums1.length, nums2.length ≤ 5000
  • -105 ≤ nums1[i], nums2[i] ≤ 105
  • تظهر قيمة واحدة على الأقل في كلتا المصفوفتين.

أمثلة

المدخلات
nums1 = [6, 2, 9, 2, 4]nums2 = [4, 4, 1, 6]
المخرجات
[4, 6]
الشرح
يوجد 4 و6 في كلتا المصفوفتين. يظهر 4 مرتين في nums2 لكنه مدرج مرة واحدة، ولا يظهر 2 و9 مطلقًا في nums2.

lock icon+16 اختبارات مخفية عند الإرسال

challenge icon

سؤال إضافي

ماذا لو كانت nums1 تحتوي على 10 قيم، وكانت nums2 تحتوي على مليون قيمة، مرتبة مسبقًا؟ أي نهج ستختار، وهل يمكن للبحث الثنائي أن يتفوق على المرور الكامل؟

إعادة ضبط الشيفرة
def intersection(nums1, nums2):
    # اكتب الكود هنا
حالات الاختبار

الحالة 1

الحالة 2

المدخلات

nums1 = [6, 2, 9, 2, 4]
nums2 = [4, 4, 1, 6]

المتوقع

[4, 6]