ما هي الخوارزميه العوديه
جدول المحتويات
ما هي الخوارزميه العوديه، الخوارزمية هي مجموعة من التعليمات لحل مشكلة أو إنجاز مهمة، ويكمن الهدف الرئيسي من الخوارزمية العودية أنّه عند البدء بحل مشكلة رئيسية يتم تفريعها إلى مشاكل فرعية، ونقوم بالبدء باستخدام الحلول للمشكلات الفرعية حتى نصل إلى المشكلة الرئيسية ونحلها، وسوف يتحدث موقع المرجع عن تعريف الخوارزمية العودية، وما هي شروط الخوارزميات العودية، ما هي أنواع الإجراءات في الخوارزميات العودية.
ما هو تعريف الخوارزميات
تعرف الخوارزمية بأنّها إجراء لحل المشكلات بمجموعة من القواعد التي يتبعها جهاز الكمبيوتر لتحقيق هدف معين، وتجدر الإشارة أنّ كل جهاز محوسب يستخدم خوارزميات تقصر الوقت اللازم للقيام بالأشياء يدويًا في عالم الأتمتة، إذ تسمح الخوارزميات للعاملين بأن يكونوا أكثر كفاءة وتركيزًا، تجعل العمليات البطيئة أكثر كفاءة في كثير من الحالات، وتستخدم الشركات المالية الخوارزميات في مجالات متعددة منها: تسعير القروض، وتداول الأسهم، وإدارة الأصول والخصوم، والعديد من الوظائف الآلية.
في علوم الكمبيوتر يجب أن يستخدم المبرمج خمسة أجزاء أساسية من الخوارزمية لإنشاء برنامج ناجح وهي:[1]
- وصف المشكلة بمصطلحات رياضية.
- إنشاء الصيغ والعمليات التي تخلق النتائج.
- إدخال معلمات النتيجة.
- تنفيذ البرنامج بشكل متكرر لاختبار دقته.
- استنتاج الخوارزمية هو النتيجة المعطاة بعد أن تمر المعلمات من خلال مجموعة التعليمات في البرنامج.
شاهد أيضًا: من العناصر التي تشترك فيها برامج معالجة النصوص
ما هي الخوارزميه العوديه
تعرف الخوارزمية العودية بأنّها طريقة تبسيط وتقسيم المشكلة إلى مشاكل فرعية من نفس الطبيعة، إذ تستدعي الخوارزمية نفسها بقيم إدخال أصغر وتحصل على النتائج ببساطة عن طريق إجراء العمليات على هذه القيم الأصغر، حتى يتم استيفاء شرط محدد، وفي ذلك الوقت تتم معالجة بقية كل تكرار من آخر مرة يتم استدعاؤها إلى الأولى.[2][3]
تمتلك الخوارزمية العودية سلبيات وعيوب من أهمها ما يلي:
- تستهلك الخوارزمية العودية مساحة كبيرة من ذاكرة التخزين، إذ تعتمد مساحة الذاكرة الإجمالية المستخدمة على مستوى تداخل عملية العودية، وعدد المتغيرات، والمعلمات المحلي.
- ينتج عن الخوارزمية العودية حسابات زائدة عن الحاجة، فعندما يكون من الممكن إيجاد حل تكراري بسيط نسبيًا بالتأكيد سيكون بديل أفضل.
شاهد أيضًا: كم عدد الأرقام السداسية العشرية اللازمة لتمثيل عنوان ip؟
ما هي شروط الخوارزميات العودية
يجب أنّ تحتوي الخوارزميات العودية على عدد من الشروط لضمان نجاحها وهي:[4]
- الحالة الأساسية: واِتعمل الخوارزمية العودية يجب أن تصل المشكلات الفرعية الأصغر في النهاية إلى الحالة الأساسية.
- الإجراء التنفيذي للوصول إلى الحالة الحالة الأساسية: ويقصد به الجزء الذي نجعل فيه المشكلة أبسط، إذ من الممكن الوقوع في المشاكل إذا لم نجعل المشاكل الفرعية أصغر تدريجياً.
- الاستدعاء التكراري: هو الجزء الذي نستخدم فيه نفس الخوارزمية لحل نسخة أبسط من المشكلة.
ما هي أنواع الخوارزميات العودية
يوجد العديد من أنواع الخورازميات العودية ومن أهمها مايلي:[5]
- تكراري خطي: هي وظيفة تقوم فقط بإجراء مكالمة واحدة لنفسها في كل مرة يتم فيها تشغيل الوظيفة على عكس ثنائية التكرار.
- ذيل متكرر: هو شكل من أشكال العودية الخطية، وفي حالة تكرار الذيل يكون النداء المتكرر هو آخر شيء تقوم به الوظيفة.
- ثنائي تكراري: وهي التي لا تحتوي فقط على مكالمة واحدة لنفسها في بعض الوظائف العودية بل لها اثنان وأكثر.
- العودية الأسية: هي الوظيفة التي تستدعي استخلاص تمثيل لجميع استدعاءات الوظائف، ويكون لها عدد أسي من المكالمات.
- العودية المتداخلة: وهي إحدى وسيطات الدالة العودية، وتقوم بذات الوظيفة العودية نفسها، وتميل هذه الوظائف إلى النمو بسرعة كبيرة.
- العودية المتبادلة: لا تحتاج الدالة العودية بالضرورة إلى استدعاء نفسها، فهي تعمل بعض الوظائف العودية في أزواج أو حتى مجموعات أكبر.
شاهد أيضًا: الجهاز الذي يربط أجهزة الحاسب بخطوط الهاتف، يسمى
أنواع الخوارزميات
ذكرنا سابقًا أنّ الخوارزمية هي سلسلة من الخطوات التي تصف كيف يمكن حل المشكلة، ومن الجدير بالذكر أنّ كل برنامج حاسوبي ينتهي بنتيجة تعتمد اعتمادًا كليًا على خوارزمية معينة، ويمكن تقسيم الخوارزميات إلى عدة أنواع منها:[6]
- الخوارزمية العودية: نحتاج في هذا النوع فقط إلى التفكير في الحالات الموجودة، وحلول أبسط لمشكلة فرعية.
- خوارزمية البرمجة الديناميكية: هذا النوع يعتمد على تذكر الماضي، وتطبيقه على النتائج المقابلة في المستقبل، وبالتالي فإن هذه الخوارزمية فعالة جدًا من حيث تعقيد الوقت.
- خوارزمية الجشع: في هذا النوع يتم اتخاذ قرار جيد دون التفكير في نتائج المستقبل.
- خوارزمية التراجع: نبدأ في هذا النواع بخيار واحد محتمل من بين العديد من الخيارات المتاحة ونحاول حل المشكلة.
- خوارزمية عشوائية: سقوم هذا النوع بإتخاذ قرارات على أساس الأرقام العشوائية، أي أنه يستخدم أرقامًا عشوائية.
- خوارزمية فرق تسد: تقسم هذه الخوارزمية المشكلات إلى مشكلات فرعية، ثم تحل كل منها، ثم تجمعها لتشكيل حل المشكلات المحددة.
- خوارزمية القوة الغاشمة: نحتاج في هذه الخوارزمية إلى الحصول على حل واحد على الأقل ثم محاولة تحسينه.
شاهد أيضًا: من الأمثلة على التقنيات
إلى هنا نكون قد وصلنا لنهاية مقالنا والذي تناول ما هي الخوارزميه العوديه، ونأمل في ختام المقال أنّ نكون قد قدمنا معلومات وفيرة تسهل على القارئ عناء البحث، إذ ذكر في هذا المقال معلومات عامة عن الخوارزميات، وما هي شروط الخوارزميات العودية، ما هي أنواع الإجراءات في الخوارزميات العودية، أنواع الخوارزميات.
المراجع
- investopedia.com , Algorithm , 09/09/2021
- careerride.com , Data structure - What is an recursive algorithm? , 09/09/2021
- cpp.edu , Lecture Notes: Recursion , 09/09/2021
- khanacademy.org , Properties of recursive algorithms , 09/09/2021
- sparknotes.com , What is Recursion? , 09/09/2021
- codingninjas.com , Types of Algorithms and Their Uses , 09/09/2021
التعليقات