Я хочу, чтобы соответствовать строки и получить оценку следующим образомЗаказанный последовательный текст, соответствующий
string 1: 4556677, string 2: 2556677, score: 0
string 1: 123345873009, string 2: 123345873112, score: 9
string 1: 22334567, string 2: 22334500, score: 6
Таким образом, оценка представляет собой общие первые п цифр, слева направо.
У меня есть список строк 100K string 1 и 30M string 2, я хотел бы отфильтровать все пары (строки 1 и 2) со счетом больше, чем «x».
Есть ли алгоритм, доступный для выполнения этой задачи вместо последовательного согласования жестокой силы? У меня есть таблицы, хранящиеся в apache hive/hbase, и хотели бы реализовать подход либо в искровом, либо в java mapreduce. Буду признателен за любую оказанную помощь.
Цените свое время брать на это. Но это одно взаимное сравнение грубой силы, это позволит проверить количество пар как «100k * 30M», что неэффективно, даже если учесть пары, которые не имеют одинаковой первой цифры. Мне нужно знать, есть ли какая-либо структура данных (подобная дереву), которая может обеспечить быструю реализацию этого соответствия. – Mike