عدد تكرار العناصر في Python مع الكفاءة المحسنة
يعد حساب تكرار العناصر داخل القائمة مهمة برمجة شائعة. يستكشف هذا السؤال نهجًا أكثر كفاءة لهذه المشكلة في بايثون.
يتضمن الكود الأولي المقدم، على الرغم من كونه وظيفيًا، التكرار خلال القائمة مرتين، مما يؤدي إلى أداء دون المستوى الأمثل. يكمن التحدي الرئيسي في إيجاد طريقة بايثونية لحساب تكرارات العناصر دون المرور الزائد عبر القائمة.
يكمن الحل في استخدام فئة العداد من وحدة المجموعات. يوفر العداد، المصمم خصيصًا لحساب الترددات، طريقة موجزة وفعالة لتحقيق النتيجة المرجوة. يوضح الكود التالي استخدامه:
from collections import Counter
words = "apple banana apple strawberry banana lemon"
Counter(words.split())
يقسم مقتطف التعليمات البرمجية هذا سلسلة الإدخال إلى كلمات فردية ويمرر القائمة الناتجة إلى Counter. والنتيجة هي كائن يشبه القاموس حيث تمثل المفاتيح كلمات فريدة، وتمثل القيم الأعداد المقابلة لها. في هذا المثال، سيكون الإخراج:
Counter({'apple': 2, 'banana': 2, 'strawberry': 1, 'lemon': 1})
تستخدم فئة العداد داخليًا جدول تجزئة لتخزين البيانات، مما يوفر عمليات بحث وإدراج في وقت ثابت. يلغي هذا الأسلوب الحاجة إلى التكرار الثاني ويحسن بشكل كبير أداء عدد مرات تكرار العناصر.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3