"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > العودية

العودية

تم النشر بتاريخ 2024-09-02
تصفح:982

Recursão

تعريف العودية:

  • العودية هي طريقة تطلق على نفسها.
  • الطريقة تكون متكررة عندما تحتوي على استدعاء لنفسها.

مثال كلاسيكي:
يعد الحساب العاملي مثالًا كلاسيكيًا على التكرار.
مضروب العدد؟ هو حاصل ضرب جميع الأعداد الصحيحة من 1 إلى N

مثال الكود:

  • يُظهر الكود المقدم طريقة عودية (factR) وطريقة تكرارية (factI) لحساب العامل.
  • تؤدي كلا الطريقتين إلى نفس النتائج، ولكن بطرق مختلفة.

كيف تعمل الطريقة العودية:

  • تستدعي الطريقة العودية (factR) نفسها حتى قيمة
  • ؟ ن يكون 1.
  • مع كل استدعاء متكرر، "تكدس" الطريقة وتبدأ بالعودة فقط عند الوصول إلى الشرط الأساسي.

مكدس المكالمات:

  • يخصص كل استدعاء متكرر مساحة على مكدس التنفيذ للمعلمات والمتغيرات الجديدة.
  • يمكن أن تتسبب الاستدعاءات المتكررة في تجاوز المكدس، مما يؤدي إلى حدوث استثناءات.

المقارنة مع التكرار:

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

تحذيرات عند استخدام العودية:

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

رمز عودي لحساب العامل
راجع RECURSION.JAVA

بيان الافراج تم نشر هذه المقالة على: https://dev.to/devsjavagirls/recursao-17o5?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3