"Вы имели в виду" в Git - PullRequest
4 голосов
/ 17 марта 2012

Я хочу написать алгоритм «Вы имели в виду».
У меня есть набор слов (так же, как команды git, такие как pull , push , клон ).
Мне нужно давать советы всякий раз, когда пользователи вводят слово из набора слов.
Все приведенные выше сведения являются основанием для моего вопроса:)

Я хочу скопировать;) код, используемый в git для реализации алгоритма «Вы имели в виду» для выполнения моей задачи.
Знаете ли вы расположение файла-источника git, содержащего «Сделал ли вызначит 'алгоритм?

Ответы [ 2 ]

9 голосов
/ 17 марта 2012

Соответствующий код: levenshtein.c (редактирование вычисления расстояния) и help.c (отсечка).

2 голосов
/ 17 марта 2012

Iarsmans уже дал вам ссылку на реализацию алгоритма в git, но если вы хотите прочитать кое-что о теории, вы можете прочитать расстояние редактирования и расстояние Левенштейна страницы в википедии.

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

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