У меня есть 5000, а иногда и больше строк уличных адресов в массиве. Я хотел бы сравнить их все с levenshtein, чтобы найти похожие матчи. Как я могу сделать это, не зацикливая все 5000 и сравнивая их напрямую с другими 4999?Сравнить 5000 строк с PHP Levenshtein
Редактировать: Меня также интересуют альтернативные методы, если у кого есть предложения. Общая цель - найти похожие записи (и исключить дубликаты) на основе адресных адресов, отправленных пользователем.
Что касается вашего обновления, вам, возможно, потребуется применить некоторые материалы для чистки, чтобы сделать вашу жизнь проще. (например: Если вы конвертируете 'Ave' в 'Avenue' 'Rd' в 'Road' и т. д. до хранения с помощью soundex, это станет более реалистичным вариантом.) –
Как вы определяете похожие адреса? У вас есть какое-то максимальное значение для расстояния Лехвенштейна, которое является пределом сходства и т. Д.? –
Аналогичным будет «12 Bird Road, Apt 6» и «12 Bird Rd. # 6» – phirschybar