الفرق بين المراجعتين لصفحة: «Algorithms/Algorithm Paradigms»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:أساليب الخوارزميات}}</noinclude> أساليب الخوارزميات Algorithm Paradigms هي مجموعة من النماذ...'
 
لا ملخص تعديل
 
(2 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:أساليب الخوارزميات}}</noinclude>
<noinclude>{{DISPLAYTITLE:أساليب الخوارزميات}}</noinclude>
أساليب الخوارزميات Algorithm Paradigms هي مجموعة من النماذج وأطر العمل التي يستند عليها في بناء وتصميم مجموعة معينة من الخوارزميات.  
أساليب الخوارزميات Algorithm Paradigms هي مجموعة من النماذج وأطر العمل التي يستند عليها في بناء وتصميم مجموعة معينة من الخوارزميات.  


== القوة الغاشمة ==
== [[Algorithms/Brute force|القوة الغاشمة]] ==


هذا الأسلوب هو الأبسط Naive ويعتمد على حل المسألة المطروحة بطريقة مباشرة.
هذا الأسلوب هو الأبسط Naive ويعتمد على حل المسألة المطروحة بطريقة مباشرة.


== الخوارزميات الجشعة ==
== [[Algorithms/Greedy Algorithms|الخوارزميات الجشعة]] ==


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


== البرمجة الديناميكية ==
== [[Algorithms/Dynamic Programming|البرمجة الديناميكية]] ==


يمكن تعريف البرمجة الديناميكية بأنّها عملية تحسين تُجرى على العمليات التعاودية، بمعنى أنّه يمكن استخدام البرمجة الديناميكية في أيّ مكان تظهر فيها استدعاءات تعاودية متكررة تستخدم المدخلات عينها. وتتلخّص عملية التحسين في تخزين النتائج التي نحصل عليها من المشاكل الفرعية وبهذا تنتفي الحاجة إلى إعادة حساب تلك النتائج في وقت لاحق.
يمكن تعريف البرمجة الديناميكية بأنّها عملية تحسين تُجرى على العمليات التعاودية، بمعنى أنّه يمكن استخدام البرمجة الديناميكية في أيّ مكان تظهر فيها استدعاءات تعاودية متكررة تستخدم المدخلات عينها. وتتلخّص عملية التحسين في تخزين النتائج التي نحصل عليها من المشاكل الفرعية وبهذا تنتفي الحاجة إلى إعادة حساب تلك النتائج في وقت لاحق.


== فرق تسد ==
== [[Algorithms/Divide And Conquer|فرق تسد]] ==


يقسِّم نموذج فرِّق تسد المسألة إلى مسائل فرعية تشبه المسألة الأصلية، ويقدّم حلولًا للمسائل الفرعية بطريقة تعاودية، ثم يدمج حلول المسائل الفرعية وذلك لتقديم حلٍّ للمسألة الأصلية.
يقسِّم نموذج فرِّق تسد المسألة إلى مسائل فرعية تشبه المسألة الأصلية، ويقدّم حلولًا للمسائل الفرعية بطريقة تعاودية، ثم يدمج حلول المسائل الفرعية وذلك لتقديم حلٍّ للمسألة الأصلية.


== التعقب الخلفي ==
== [[Algorithms/Backtracking|التعقب الخلفي]] ==


يستخدم نموذج التعقب الخلفي في حلّ المسائل بطريقة تعاودية محاولًا بناء الحلّ تصاعديًا قطعة قطعة، وحذف الحلول التي تفشل في تحقيق القيود المفروضة من قبل المسألة في أي وقت (يقصد بالوقت هنا الوقت المستغرق للوصول إلى أي مرحلة في شجرة البحث).
يستخدم نموذج التعقب الخلفي في حلّ المسائل بطريقة تعاودية محاولًا بناء الحلّ تصاعديًا قطعة قطعة، وحذف الحلول التي تفشل في تحقيق القيود المفروضة من قبل المسألة في أي وقت (يقصد بالوقت هنا الوقت المستغرق للوصول إلى أي مرحلة في شجرة البحث).


[[تصنيف: خوارزميات]]
[[تصنيف: خوارزميات]]

المراجعة الحالية بتاريخ 08:36، 12 أكتوبر 2019

أساليب الخوارزميات Algorithm Paradigms هي مجموعة من النماذج وأطر العمل التي يستند عليها في بناء وتصميم مجموعة معينة من الخوارزميات.

القوة الغاشمة

هذا الأسلوب هو الأبسط Naive ويعتمد على حل المسألة المطروحة بطريقة مباشرة.

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

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

البرمجة الديناميكية

يمكن تعريف البرمجة الديناميكية بأنّها عملية تحسين تُجرى على العمليات التعاودية، بمعنى أنّه يمكن استخدام البرمجة الديناميكية في أيّ مكان تظهر فيها استدعاءات تعاودية متكررة تستخدم المدخلات عينها. وتتلخّص عملية التحسين في تخزين النتائج التي نحصل عليها من المشاكل الفرعية وبهذا تنتفي الحاجة إلى إعادة حساب تلك النتائج في وقت لاحق.

فرق تسد

يقسِّم نموذج فرِّق تسد المسألة إلى مسائل فرعية تشبه المسألة الأصلية، ويقدّم حلولًا للمسائل الفرعية بطريقة تعاودية، ثم يدمج حلول المسائل الفرعية وذلك لتقديم حلٍّ للمسألة الأصلية.

التعقب الخلفي

يستخدم نموذج التعقب الخلفي في حلّ المسائل بطريقة تعاودية محاولًا بناء الحلّ تصاعديًا قطعة قطعة، وحذف الحلول التي تفشل في تحقيق القيود المفروضة من قبل المسألة في أي وقت (يقصد بالوقت هنا الوقت المستغرق للوصول إلى أي مرحلة في شجرة البحث).