Здравствуйте, xtile, Вы писали:
X>Здравствуйте, punches, Вы писали:
P>>Здравствуйте!
P>>Есть две строки и надо узнать: похожи они или нет с некоторой точностью. Нужно для того, чтобы определить, что слово хоть и с опечаткой, но нужно нам.
X>Можно так:
X>введем функцию расстояния между 2мя строками — минимальное количество элементарных действий, которые нужно произвести над строкой 1 для получения строки 2.
X>Как правило, элементарными действиями считают: удаление символа, вставка символа, изменение символа, перестановка двух соседних символов.
На сколько я понимаю, алгоритм Левенштейна что-то такое и делает.
X>Когда найдено расстояние между строками, функцию похожести можно вычислить так: f = 1 — distance(a, b)/max(strlen(a), strlen(b)).
Спасибо за формулу