Сравнение двух строк с получением числовой дельты - PullRequest
4 голосов
/ 09 октября 2008

Кто-нибудь знает простой способ сравнить две строки вместе, чтобы получить «разницу» между ними? (в числовом значении) Я ползал Google без особой удачи в этом. И после некоторого кодирования это не так просто, как я думал. Любые подсказки?

Ответы [ 4 ]

5 голосов
/ 09 октября 2008

Вы говорите о «Редактировании расстояния»? Сделайте поиск по «Расстояние Левенштейна», на SO или Google. Я использую версию, опубликованную в блоге Стивена Туба

2 голосов
/ 09 октября 2008
1 голос
/ 09 октября 2008

Возможно, вы захотите взглянуть на расстояния Левенштейна и Хемминга . Один вычисляет расстояние редактирования (вставка, удаление, изменение), а другой переворачивает бит.

0 голосов
/ 09 октября 2008

Вам необходимо очень четко определить «сумму разницы». Там много места для маневра.

Например, старая функция C / C ++ strcmp() сравнивала символ за символом и возвращала разницу при первом совпадении.

С другой стороны, программа diff предоставляет полный список различий между двумя файлами (которые в определенном смысле также являются строками). Как бы вы это оценили?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...