• 0

كيف أحذف العناصر المتكررة من المصفوفة في الروبي ؟

لدي مصفوفة بها العديد من البيانات لكن بعض هذه البيانات مكررة لذلك فهي تسبب لي العديد من المشاكل والأخطاء في برنامجي، فكيف أستطيع حذف هذه العناصر المكررة من المصفوفة عن طريق الروبي ؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هنالك العديد من الطرق لحذف العناصر المكررة في المصفوفة وأسهل هذه الطرق استخدام تابع uniq الذي يقوم بإرجاع جميع العناصر بدون تكرار في المصفوفة، ويمكنك استخدامه كما في المثال التالي:

array = array.uniq

ويمكنك أيضا استخدام العامل الحسابي &  لحذف العناصر المكررة من المصفوفة كما في المثال التالي:

a = [1,1,2,3]
a & a

كما يمكنك إنشاء آلية خاصة بك لحذف العناصر المكررة من المصفوفة عن طريق استخدام حلقات التكرار كما في هذا المثال:

a = [1, 2, 2, 3]
counts = Hash.new(0)
a.each { |v| counts[v] += 1 }
p counts.select { |v, count| count == 1 }.keys # [1, 3]

كما يمكنك أيضا استخدام التابع inject لحذف التكرارات كما في المثال التالي:

[1,1,1,2,4,6,3,3].inject({}){ |ele, n| ele[n] = nil; ele }.keys
# => [1, 2, 4, 6, 3]

المصدر

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن