الخوارزميات: خوارزميات الترتيب (الفرز)
خوارزميات الترتيب (Sorting Algorithms) هي خوارزميات تستخدم لترتيب عناصر قائمة بترتيب معين (تصاعدي أو تنازلي). تعتبر من أهم الخوارزميات في علوم الحاسوب.
خوارزمية الترتيب بالإدراج (Insertion Sort)
مبدأها: بناء القائمة المرتبة عناصرها واحداً تلو الآخر بإدراج كل عنصر جديد في مكانه المناسب.
التعقيد: O(n^2) في أسوأ الحالات، O(n) في أفضل الحالات.
مثال
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i-1
while j >= 0 and key < arr[j]:
arr[j+1] = arr[j]
j -= 1
arr[j+1] = key
return arr
خوارزمية الترتيب بالاختيار (Selection Sort)
مبدأها: إيجاد أصغر عنصر ووضعه في الموضع الأول، ثم ثاني أصغر عنصر ووضعه في الموضع الثاني، وهكذا.
التعقيد: O(n^2) دائماً.
خوارزمية الترتيب السريع (Quick Sort)
مبدأها: اختيار عنصر محوري (pivot) وتقسيم القائمة إلى قائمتين (أصغر من المحور وأكبر منه) ثم ترتيب كل قائمة recursively.
التعقيد: O(n log n) في المتوسط، O(n^2) في أسوأ الحالات.
تمارين
- طبق خطوات خوارزمية الإدراج على القائمة [5, 2, 9, 1, 5, 6].
- اكتب دالة selection_sort(arr) بلغة بايثون.
- قارن بين خوارزميتي الإدراج والاختيار من حيث السرعة.
- القائمة [8, 3, 1, 7, 0, 4]، استخدم خوارزمية الترتيب السريع مع المحور الأول.
- ابحث عن أصغر تعقيد زمني يمكن لخوارزمية ترتيب تحقيقه. ما اسمها؟
للاستزادة، راجع درس الخوارزميات: المفاهيم الأساسية والمخططات الانسيابية ودرس البرمجة بلغة بايثون: أساسيات.
📍 دروس مشابهة:
- الفلسفة — تمارين محلولة في منهجية المقال الفلسفي — الأولى ثانوي (شعب علمية) — بكالوريا — المنهاج الجزائري
- الفلسفة — مشكلة الفن: مفهوم الجمال والإبداع — الأولى ثانوي (شعب علمية) — بكالوريا — المنهاج الجزائري
- تحولات الطاقة — حفظ الطاقة وتحولاتها في الأجهزة — العلوم الفيزيائية — السنة الرابعة متوسط — المنهاج الجزائري
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.