تخطَّ إلى المحتوى

🧮 شرح هياكل البيانات والخوارزميات

المصفوفات بعمق

الدرس 6 من 25· ⏱ 1 دقائق قراءة

ما هي المصفوفة؟

مجموعة عناصر متجاورة في الذاكرة، يُوصَل إليها بفهرس يبدأ من 0.

تعقيد العمليات

العمليةالتعقيد
الوصول بالفهرسO(1)
البحث (غير مرتّبة)O(n)
الإدراج/الحذف في النهايةO(1)
الإدراج/الحذف في البداية/الوسطO(n)

السبب: الإدراج في الوسط يتطلّب إزاحة كل العناصر التالية.

مثال

arr = [10, 20, 30]
arr[1]            # O(1) الوصول
arr.append(40)    # O(1) إضافة في النهاية
arr.insert(0, 5)  # O(n) إزاحة الكل

المصفوفات الديناميكية

مثل list في بايثون وArrayList في جافا — تتوسّع تلقائيًا، لكن إعادة التحجيم أحيانًا تكلّف O(n).

💡 المصفوفة مثالية للوصول السريع بالفهرس، سيّئة للإدراج المتكرّر في الوسط.

🎯 التالي: القوائم المترابطة.

هل كان هذا الدرس مفيدًا؟