English  

كتب recursive solution

اذا لم تجد ما تبحث عنه يمكنك استخدام كلمات أكثر دقة.

عرض المزيد

حل تعاودي (معلومة)


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

  • علِّم الأعمدة ب A, B, C
  • ليكن عدد الأقراص n
  • رقّم الأقراص من 1 (الأصغير، في الأعلى) إلى n (الأكبر، في الأسفل)

لنقل كل الأقراص من العمود A إلى العمود C:

  1. حرك n-1 الأقراص من A إلى B. اترك القرص n على العمود A
  2. حرك القرص n من A إلى C
  3. حرك n−1 الأقراص من B إلى C بحيث يكونو فوق القرص n

ما ورد أعلاه هو خوارزمية عودية: لتنقيذ الخطوات 1 و 3، طبق نفس الخوارزمية مجددا على n−1. العملية كلها تأخذ عدد محدود من الخطوات، لأن الخوارزمية في مرحلة ستصل إلى n = 1. هذه العملية، تحريك قرص واحد من العمود A إلى العمود B، هي بسيطة.

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

المصدر: wikipedia.org