أخبار الموقع

الإعلام الآلي — الخوارزميات: الفرز بالإدراج (Insertion Sort) — الثانية ثانوي — المنهاج الجزائري

الخوارزميات: الفرز بالإدراج (Insertion Sort)

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

مبدأ الخوارزمية

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

خطوات الخوارزمية

  1. نبدأ من العنصر الثاني (i = 1)
  2. نخزن قيمة العنصر الحالي في متغير مؤقت (key)
  3. نقارن key مع العناصر السابقة (j = i-1, i-2, …)
  4. إذا كان العنصر السابق أكبر من key، نزيحه إلى اليمين
  5. نكرر الخطوة 4 حتى نجد المكان المناسب
  6. ندرج key في مكانه المناسب
  7. ننتقل إلى العنصر التالي (i++) ونكرر

تطبيق الخوارزمية بلغة C

void insertionSort(int arr[], int n) {
    int i, key, j;
    for (i = 1; i < n; i++) {
        key = arr[i];
        j = i - 1;
        
        while (j >= 0 && arr[j] > key) {
            arr[j + 1] = arr[j];
            j = j - 1;
        }
        arr[j + 1] = key;
    }
}

تحليل التعقيد

  • أفضل حالة: O(n) عندما تكون المصفوفة مرتبة بالفعل
  • أسوأ حالة: O(n²) عندما تكون المصفوفة مرتبة تنازلياً
  • الحالة المتوسطة: O(n²)
  • الذاكرة الإضافية: O(1) (خوارزمية موضعية)

مثال تطبيقي

لنرتب المصفوفة [5, 2, 4, 6, 1, 3]:

  • i=1: key=2, نقارن مع 5 ← [2, 5, 4, 6, 1, 3]
  • i=2: key=4, نقارن مع 5 ثم 2 ← [2, 4, 5, 6, 1, 3]
  • i=3: key=6, مكانه صحيح ← [2, 4, 5, 6, 1, 3]
  • i=4: key=1, نزيح الكل ← [1, 2, 4, 5, 6, 3]
  • i=5: key=3, نزيح 4,5,6 ← [1, 2, 3, 4, 5, 6]

تمارين

  1. طبق خوارزمية الفرز بالإدراج على المصفوفة [8, 3, 5, 1, 9, 2] خطوة بخطوة.
  2. أكتب برنامجاً بلغة C يقرأ 5 أعداد من المستخدم ويرتبها ترتيباً تصاعدياً باستخدام Insertion Sort.
  3. قارن بين خوارزمية الفرز بالإدراج وخوارزمية الترتيب بالإدراج من حيث السرعة.
  4. ما فائدة كون الخوارزمية موضعية (In-place) من حيث استهلاك الذاكرة؟

للمزيد من المعلومات، راجع درس الخوارزميات: الترتيب بالإدراج ودرس الخوارزميات: البحث الثنائي.

📍 دروس مشابهة

شاهد أيضا

التربية العلمية والتكنولوجية — الحيوانات: الحيوانات الأليفة

التربية العلمية والتكنولوجية — الحيوانات: الحيوانات الأليفة مقدمة مرحبا بكم في درس التربية العلمية والتكنولوجية …

التربية العلمية والتكنولوجية — الحيوانات: حيوانات الغابة

التربية العلمية والتكنولوجية — الحيوانات: حيوانات الغابة مقدمة مرحبا بكم في درس التربية العلمية والتكنولوجية …

التربية العلمية والتكنولوجية — الطعام: الفواكه والخضروات

التربية العلمية والتكنولوجية — الطعام: الفواكه والخضروات مقدمة مرحبا بكم في درس التربية العلمية والتكنولوجية …

العلوم الفيزيائية — الحموض والقواعد: تعريف pH — الأولى ثانوي (بكالوريا) – شعبة علوم تجريبية — المنهاج الجزائري

درس الحموض والقواعد: تعريف pH في هذا الدرس المهم من مادة العلوم الفيزيائية للسنة الأولى …

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

🎓 العد التنازلي لبكالوريا 2026
00 يوماً
:
00 ساعة
:
00 دقيقة
:
00 ثانية

📚 أحدث الدروس

عرض الكل ←
📖
س3 ابتدائي

التربية الإسلامية — بر الوالدين

فضل بر الوالدين وأهميته في الإسلام

🔢
س5 ابتدائي

الرياضيات — مساحة القرص

حساب مساحة الدائرة — ط × نق²

⚛️
3 ثانوي

الفيزياء — ثنائي القطب RL

تمارين بكالوريا مع الحلول

🌍
3 ثانوي

التاريخ — الحرب العالمية الأولى

الأسباب والنتائج — بكالوريا

📝 بنك الفروض والاختبارات

عرض الكل ←
فروض الفصل الأول جميع المواد — الأولى متوسط
اختبارات الفصل الثاني مع الحلول — الثالثة متوسط
مواضيع بكالوريا مقترحة مع الحلول — 3 ثانوي
مسابقات الأساتذة نماذج وحلول — 2026