Menu
CoddyTech

Edit Distance

Bạn nhận được hai từ, word1 và word2. Mỗi lần chỉnh sửa sẽ thay đổi word1 theo một trong ba cách: chèn một chữ cái vào bất kỳ vị trí nào, xóa một chữ cái hoặc thay một chữ cái bằng một chữ cái khác. Hãy trả về số lần chỉnh sửa ít nhất để biến word1 thành word2.

Hàm

minDistance(word1: string, word2: string) → integer
word1string
từ bạn chỉnh sửa
word2string
từ cần đạt đến
Trả vềinteger
số lần chèn, xóa và thay thế ít nhất để biến word1 thành word2

Ràng buộc

  • 1 ≤ word1.length ≤ 500
  • 1 ≤ word2.length ≤ 500
  • Cả hai từ chỉ chứa các chữ cái tiếng Anh viết thường.

Ví dụ

Đầu vào
word1 = "spot"word2 = "stop"
Đầu ra
2
Giải thích
Thay p bằng t và t bằng p: spot trở thành stot, rồi stop. Một lần chỉnh sửa là chưa đủ, vì hai từ khác nhau ở hai vị trí, còn thêm hoặc xóa một ký tự sẽ làm thay đổi độ dài.
challenge icon

Câu hỏi mở rộng

Bạn cũng có thể trả về một danh sách các chỉnh sửa ngắn nhất cùng với số lượng của chúng không?

Đặt lại code
def minDistance(word1, word2):
    # Viết code ở đây

Kiểm thử #1

Kiểm thử #2

Kiểm thử #3

Đối số

word1 = "spot"
word2 = "stop"

Đầu ra mong đợi

2