الجواهر للمعلوماتية الجواهر للمعلوماتية
recent

آخر الأخبار

recent
جاري التحميل ...

خوارزمية ترتيب أو فرز قائمة من الأعداد الحقيقية

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


الخوارزميات الشائعة


فهناك العديد من الخوارزميات التي يمكنك استخدامها لفرز أو ترتيب الأرقام الحقيقية. فيما يلي نذكربعض الخوارزميات الشائعة:

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

2-فرز الإدراج: تقوم هذه الخوارزمية بترتيب القائمة عن طريق التكرارعبر القائمة وإدخال كل عنصر في موضعه الصحيح بالنسبة للعناصر التي تم فرزها قبله.

3-فرز التحديد: تعمل هذه الخوارزمية من خلال إيجاد الحد الأدنى للعنصر بشكل متكرر في الجزء غير المرتب من القائمة وإضافته إلى نهاية الجزء الذي تم ترتيبه.

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

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


الجواهر للمعلوماتية


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

من الصعب تحديد ما هي خوارزمية  "الأفضل" للعمل بها ، لأن الخيار الأفضل يعتمد على الخصائص المحددة للبيانات التي تعمل بها وماهية المشكلة التي تحاول حلها. تتميز خوارزميات الفرز المختلفة بنقاط قوة وضعف مختلفة ، وسيعتمد الخيار الأفضل على طبيعة المعطيات ودرجة صعوبة حل المسألة.


الأشياء التي يجب مراعاتها عند إختيار الخوارزمية


فيما يلي بعض الأشياء التي يجب مراعاتها عند اختيار خوارزمية الفرز:

- مدة التنفيذ : ما هو الوقت الذي تستغرقه الخوارزمية للتشغيل ، في أسوأ الحالات؟ بعض الخوارزميات ، مثل فرز الفقاعات وفرز الإدراج ، لها تعقيد زمني ضعيف نسبيًا (n  أس 2 أو أسوأ) ، مما يعني أنها قد تستغرق وقتًا طويلاً للتشغيل في قوائم كبيرة. أما الخوارزميات الأخرى  فتمتلك  ، مثل دمج الفرز والفرز السريع ، تعقيدًا زمنيًا أفضل بكثير  (n log n) ، مما يعني أنها أسرع في القوائم الكبيرة.

- مساحة الذاكرة المستعملة : ما مقدار الذاكرة التي تحتاجها الخوارزمية لتشغيلها؟ تتطلب بعض الخوارزميات ، مثل دمج الفرز ، ذاكرة إضافية لتخزين القوائم الفرعية المؤقتة أثناء عملية الفرز. إذا كانت لديك ذاكرة محدودة متاحة ، فقد تحتاج إلى اختيار خوارزمية ذات مساحة تعقيد أفضل.

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

- سهولة التنفيذ : بعض الخوارزميات أسهل في التنفيذ من غيرها. إذا كنت تكتب برنامج الفرز الخاصة بك ، فقد ترغب في اختيار خوارزمية يسهل فهمها وتنفيذها.

بشكل عام ، يعتبر الفرز السريع والدمج أكثر خوارزميات الفرز كفاءة من حيث مدة التنفيذ ، ولكن هناك العديد من العوامل الأخرى التي يجب مراعاتها عند اختيار خوارزمية الفرز. 


برنامج خوارزمية الدمج بلغة Python


الجواهر للمعلوماتية


تنفيذ خوارزمية فرز الإدراج له تعقيد زمني لـ n أس 2 ، مما يعني أنه يعمل بشكل ضعيف نسبيًا في القوائم الكبيرة. ومع ذلك ، فإنه يتميز بكونه سهل التنفيذ وفعال نسبيًا للقوائم الصغيرة.


برنامج خوارزمية الفرز السريع بلغة Python


الجواهر للمعلوماتية


تنفيذ خوارزمية الفرز السريع له تعقيد زمني لـ  (n log n) في المتوسط ، مما يجعله أحد أكثر خوارزميات الفرز كفاءة. 

التعليقات


جميع الحقوق محفوظة

الجواهر للمعلوماتية