العودة إلى الدورة

الدرس السادس عشر: فرز الفقاعة (Bubble Sort): المفهوم والتطبيق

الخوارزميات: من الصفر إلى الاحتراف (دليل المبتدئين)

16. فرز الفقاعة (Bubble Sort): المفهوم والتطبيق (O(N²))

فرز الفقاعة هو أبسط خوارزمية فرز، ولكنه أيضاً أحد أقلها كفاءة. ويستخدم في المقام الأول لأغراض تعليمية.

المفهوم

يقوم فرز الفقاعة بالمرور بشكل متكرر عبر القائمة، ومقارنة العناصر المتجاورة، وتبديلها إذا كانت في الترتيب الخاطئ. 'تتصاعد' العناصر الأكبر إلى نهاية القائمة مع كل تمريرة.

خطوات التطبيق

  1. البدء من بداية القائمة.
  2. مقارنة العنصر الحالي بالعنصر التالي.
  3. إذا كان العنصر الحالي أكبر، قم بتبديلهما.
  4. كرر هذا حتى نهاية القائمة.
  5. كرر العملية بأكملها N-1 مرة (أو حتى لا تحدث أي عمليات تبديل في تمريرة).

python def bubble_sort(arr): n = len(arr) for i in range(n): # Last i elements are already in place for j in range(0, n - i - 1): # Swap if the element found is greater than the next element if arr[j] > arr[j + 1]: arr[j], arr[j + 1] = arr[j + 1], arr[j] return arr