Menu
CoddyTech

Edit Distance

لديك كلمتان، word1 وword2. يغيّر التعديل word1 بإحدى ثلاث طرق: إدراج حرف في أي موضع، أو حذف حرف، أو استبدال حرف بحرف آخر مختلف. أرجِع أقل عدد من التعديلات اللازمة لتحويل word1 إلى word2.

الدالة

minDistance(word1: string, word2: string) → integer
word1string
الكلمة التي تعدّلها
word2string
الكلمة to reach
تُرجعinteger
أقل عدد من عمليات الإدراج والحذف والاستبدال التي تحوّل word1 إلى word2

القيود

  • 1 ≤ word1.length ≤ 500
  • 1 ≤ word2.length ≤ 500
  • تحتوي كلتا الكلمتين على أحرف إنجليزية صغيرة فقط.

أمثلة

المدخلات
word1 = "spot"word2 = "stop"
المخرجات
2
الشرح
استبدل p بـ t وt بـ p: تصبح spot stot، ثم stop. تعديل واحد لا يكفي، لأن الكلمتين تختلفان في موضعين، كما أن الإدراج أو الحذف سيغيّر الطول.
challenge icon

سؤال إضافي

هل يمكنك أيضًا إرجاع قائمة واحدة بأقصر التعديلات، إلى جانب عددها؟

إعادة ضبط الشيفرة
def minDistance(word1, word2):
    # اكتب الكود هنا

اختبار #1

اختبار #2

اختبار #3

الوسائط

word1 = "spot"
word2 = "stop"

الإخراج المتوقع

2