"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية العثور على العناصر المتقاطعة في قوائم بايثون المتعددة بكفاءة؟

كيفية العثور على العناصر المتقاطعة في قوائم بايثون المتعددة بكفاءة؟

تم النشر بتاريخ 2024-11-08
تصفح:766

How to Find Intersecting Elements in Multiple Python Lists Efficiently?

تحديد العناصر المشتركة ضمن قوائم بايثون المتعددة

في بايثون، يمكن تحقيق استخراج تقاطع قائمتين باستخدام الدالة set.intersection(). ومع ذلك، يصبح تحديد تقاطع القوائم المتعددة أكثر تعقيدًا. فيما يلي حل لتحديد العناصر المشتركة بكفاءة بين عدة قوائم:

الصيغة المقدمة في الإجابة، set.intersection(*map(set,d))، توفر طريقة موجزة وفعالة للعثور على التقاطع بين قوائم متعددة. دعنا نحلل مكوناتها:

  • d يمثل قائمة القوائم، حيث كل عنصر هو في حد ذاته قائمة.
  • map(set, d) يحول كل قائمة داخلية داخل d إلى a set، وإزالة العناصر المكررة بشكل فعال.
  • * يفك حزم المجموعة التي تم إنشاؤها بواسطة الخريطة لتمرير كل مجموعة كمعلمة منفصلة إلى set.intersection ().

من خلال ربط هذه العمليات معًا، نحصل على تقاطع جميع المجموعات (في البداية القوائم) الموجودة في القائمة د. في المثال الموضح:

d = [[1,2,3,4], [2,3,4], [3,4,5,6,7]]

ستؤدي مجموعة التعليمات البرمجية.intersection(*map(set,d)) إلى النتيجة المرجوة:

[3, 4]

يعمل هذا النهج على زيادة كفاءة قم بتعيين بنية البيانات لإزالة التكرارات بسرعة مع الحفاظ على ترتيب العناصر المشتركة.

بيان الافراج أعيد طبع هذه المقالة على: 1729519394 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3