Расчет расстояния Левенштейна-Дамерау с оценкой максимального интересующего расстояния

Рассмотрим C# реализацию алгоритма вычисления LD-расстояния, предложенную на эта вики-страница.

Я хотел бы расширить его с возможностью прерывания процесса расчета в случае, если определенный (заранее определенный) порог расстояния уже превышен.

Этот концептуальный подход к оптимизации был предложен Алексом Мартелли на эта тема.

Возникает вопрос: как это решение можно реализовать поверх предлагаемого решения C#? { Примечание: функция должна возвращать максимальное расстояние, найденное до ее возврата. }

Большое спасибо.


person Bliss    schedule 25.10.2012    source источник
comment
@Qnan: Попробовать это? Если сослаться на предложенное Алексом решение - хотя я понимаю его концептуально, я не знаю, как его реализовать, а конкретно - на упомянутой реализации C#. Я нашел ваш ответ на похожий вопрос относительно определенной реализации Delphi, но не удалось перенести ее на реализацию C#. обсуждается, и я также не нашел, как получить максимальное найденное расстояние, которое будет возвращено функцией. Ваш совет будет оценен.   -  person Bliss    schedule 26.10.2012
comment
Похоже, вы не совсем понимаете, как работает алгоритм. Попробуйте найти хорошее руководство по динамическому программированию или что-то более подробное о расстоянии редактирования - то, что вы хотите сделать, довольно тривиально.   -  person Ivan Vergiliev    schedule 26.10.2012
comment
@YanRaf SO — это сайт контроля качества, поэтому ожидается, что люди будут задавать конкретные вопросы. Если вы не совсем понимаете алгоритм, поищите более подробное объяснение, если вам неудобно программировать на C# — узнайте больше об этом языке или используйте вместо него другой. Прошу воспринимать это не как критику, а как уточнение.   -  person Qnan    schedule 26.10.2012