2012-02-26 6 views
3

전화 인터뷰에서이 질문을 받았습니다.최소한의 수정 횟수로 한 문자열을 다른 문자열로 변환하는 방법은 무엇입니까?

하나의 문자열을 다른 문자열로 변환하는 데 필요한 최소 편집 수를 두 문자열에서 찾습니다. 솔루션은 java로 구현되고 O (n * m)에서 실행되어야합니다. n과 m은 입력 문자열의 길이입니다.

예 :
문자열 : 우유 ->맥주
분 편집 : 서로 다른 길이의 문자열에 대한 4

+3

http://en.wikipedia.org/wiki/Levenshtein_distance – Mchl

+0

이것은 당신이 원하는 : http://en.wikipedia.org/wiki/Levenshtein_distance 편집 : Mchl 그것에 나를 이길 :/ –

+0

또는이 : HTTP : //en.wikipedia.org/wiki/Hamming_distance – mindandmedia

답변

0

가정 : 말씀은 별개의 문자가 포함되어 있습니다.

S1 용 문자 해시를 만드는 방법은 어떻습니까?

이제 S2의 각 문자를 반복하고 S1의 Hashset에서 제거하려고합니다. 캐릭터를 제거 할 수 있으면 카운터를 증가시키지 마십시오. 그렇지 않으면 카운터를 증가시킵니다.

카운터에 최소 편집 횟수가 포함되어 있습니다.

관련 문제