Просто, чтобы проинформировать вас, ребята, по моему вопросу, я, наконец, сделал следующее: 1- объединил все поля вместе с разделителем между ними ("!") 2- скачал библиотеку SearchString по этой ссылке johannburkard.de/software / stringsearch 3 - преобразовал составную строку и шаблон поиска patten в lowerCase.4. Использовал алгоритм Бойера-Мура, Раиты, выполнив следующее: BoyerMooreHorspoolRaita searchAl=new BoyerMooreHorspoolRaita();</p>
<p>
Затем я сделал это:
int j=searchAl.searchString(match, search.getText()); if(j!=-1) result.add(e);
Я попытался сравнить первый метод, который я использовал с этим, в таблице, содержащей 100000записи, и результаты были следующими:
Сопоставление с образцом: ПЕРВЫЙ ВЫПОЛНЕНИЕ: 1 Шаблон длинного символа: операция заняла 3,328 секунды для завершения Шаблон длиной 2 символа: операция заняла 14,14 секунды для завершения 3Шаблон длинных символов: для выполнения операции потребовалось 11,328 секунд Шаблон длинных символов: для завершения операции потребовалось 8,437 секунды Шаблон длинных символов: для завершения операции потребовалось 8,344 секунды. Шаблон длиной 6 символов: для завершения операции
* потребовалось 8,078 секунд.1011 * ВТОРОЙ ЗАПУСК: 1 Шаблон длиной символа: Операция заняла 3,281 секунды для завершения Шаблон длиной 2 символа: Операция заняла 14,14 секунды для завершения Шаблон длиной 3 символа: Операция заняла 11,344 секунды для завершения Шаблон длиной 4 символа: Операция заняла 8,375 секундыs, чтобы завершить шаблон длиной 5 символов: операция заняла 8.469 секунд для завершения шаблон длиной 6 символов: операция заняла 8.266 секунд для завершения
Бойер Мур РАИТА: ПЕРВЫЙ ВЫПОЛНЕНИЕ: 1 шаблон длиной символа: операцияДля завершения шаблона длиной 2 символа потребовалось 11,688 секунд. Для завершения шаблона длиной 3 символа: операция длилась 10,594 секунд. Для завершения шаблона длиной в 4 763 операции: шаблон длился 4,328 секунды. Для завершения шаблона длиной в 5 символов: операция заняла 4,5 секунды.Шаблон длинных символов: для выполнения операции потребовалось 4,996 секунды
ВТОРОЙ ЗАПУСК: 1 Шаблон длинного символа: для выполнения операции потребовалось 8,172 секунды. Шаблон длиной 2 символа: для выполнения операции потребовалось 8,312 секундышаблон: Операция заняла 5,484 секунды для завершения 4 символа. Шаблон: операция заняла 3,922 секунды для завершения. 5 символов шаблон: Операция заняла 3,922 секунды для завершения 6 символов. lШаблон ong: Операция заняла 4,047 секунды для завершения
Обратите внимание, что фильтрация по шаблонам (первый метод) выполняется быстрее, когда речь идет о сопоставлении одного символа.Но Бойер Мур Хорспул Раита просто светит, поскольку длина паттерна увеличивается.
Надеюсь, это кому-нибудь как-нибудь поможет.Приветствия.