Tôi đang tìm một thuật toán có 2 chuỗi và sẽ cho tôi trở lại "yếu tố tương tự".Tìm hai chuỗi tương tự như thế nào là
Về cơ bản, tôi sẽ có một đầu vào có thể sai chính tả, có chữ cái transposed, vv, và tôi phải tìm các đối sánh gần nhất trong danh sách các giá trị có thể có.
Đây không phải để tìm kiếm trong cơ sở dữ liệu. Tôi sẽ có một danh sách trong bộ nhớ của 500 hoặc để chuỗi để phù hợp với, tất cả dưới 30 ký tự, do đó, nó có thể tương đối chậm.
Tôi biết điều này tồn tại, tôi đã thấy nó trước đây, nhưng tôi không thể nhớ tên của nó.
Chỉnh sửa: Cảm ơn bạn đã chỉ ra Levenshtein và Hamming. Bây giờ, tôi nên triển khai cái nào? Về cơ bản họ đo lường những thứ khác nhau, cả hai đều có thể được sử dụng cho những gì tôi muốn, nhưng tôi không chắc cái nào phù hợp hơn.
Tôi đã đọc các thuật toán, Hamming có vẻ nhanh hơn. Vì sẽ không phát hiện hai nhân vật bị chuyển đổi (tức là Jordan và Jodran), mà tôi tin rằng sẽ là một sai lầm phổ biến, điều này sẽ chính xác hơn cho những gì tôi muốn? Ai đó có thể cho tôi biết một chút về sự cân bằng?
Trên thực tế, cả hai Hamming và khoảng cách Levenshtein phát hiện chuyển vị, mỗi gán một chi phí của 2 .Đây là một trong số ít lỗi điển hình mà Hamming distance * sẽ * nhận một cách hợp lý - bất kỳ chèn hoặc xóa ký tự đơn nào sẽ ngay lập tức cho bạn điểm số không giống nhau. Sử dụng Levenshtein. –