← אלגוריתמים בתנועה

🧮 תכנות דינמי בתנועה

כמה הוספות, מחיקות או החלפות צריך כדי לשנות מילה אחת לאחרת? ממלאים טבלה קטנה ומשתמשים בתשובות שכבר חישבנו.

אפשר להשתמש באותיות עבריות או אנגליות, עד 8 תווים לכל מילה.

הרעיון

D[i,j] הוא מספר הפעולות המינימלי לשינוי i האותיות הראשונות ל־j האותיות הראשונות. בכל תא בוחרים את המינימום מבין מחיקה, הוספה והחלפה; אם האותיות זהות, ההחלפה עולה אפס.

זמן ריצה O(m × n) וזיכרון O(m × n). בסיום המסלול הירוק מסמן בחירה אחת שמגיעה לתוצאה.