![]() |
Поиск по базе
У меня есть большая база слов, больше 10000, и нужно организовать поиск по ней, желательно с небольшими затратами времени. Можете посоветовать, как это сделать? И может есть какая-нить библиотека для нормальной работы с ресурсами?
|
Ответ: Поиск по базе
|
Ответ: Поиск по базе
А в чем представлена твоя база?;)
Если в текстовом\типизированном файле, то она отсортированна?;) |
В сортированном текстовом файле. 2Tadeus: почти ничего не понял.
Ещё вопрос, как мидлетпаскаль работает с русскими строками в ресурсах? |
Ответ: Поиск по базе
Цитата:
|
Ответ: Поиск по базе
алгоритм ввода синхронный самому вводу (то есть появляются записи, удволетворяющие запросу прямо в процессе ввода) или по запросу?;)
|
Ответ: Поиск по базе
из ресурсов отлично берет и win-1251.
а вот с длинными файлами проблема, позиционирование поддерживают в основном сименсы, остальные в основном имитируют его, т.е. это тормоза. Я когда делал телефонный справочник районный, резал на мелкие файлы. |
Ответ: Поиск по базе
я тоже решал проблему резкой на файлы. Инфу хранить лучше в Win1251, в UTF много места занимает.
|
Ответ: Поиск по базе
2Alex_90: по запросу. А как разрезать файл например по первым двум буквам?
|
Ответ: Поиск по базе
Думаю достаточно будет разделить по первой букве, уже получится выигрыш в производительности.
|
Ответ: Поиск по базе
А потом как? Перебор всех в поиске нужной комбинации?
|
Ответ: Поиск по базе
Вообще-то не совсем понятно,что нужно получить в итоге - просто определить, встречается слово или нет, или что-то другое?
|
Ответ: Поиск по базе
Дано начало слова, надо вывести всё, что с этого начинается.
|
Ответ: Поиск по базе
Тогда по идее, всетаки надо делать какую-нибудь древовидную структуру, только вот как-вопрос сложный...
|
Ответ: Поиск по базе
Короче идея сделать орфографический словарь.
|
Ответ: Поиск по базе
У меня такой недоделанный лежит. Сразу могу сказать, по первой букве искать он успеет, но хипа не хватит для загрузки файла в память.
У меня на "н", "о" по 150Кб слов, а на "п" вообще 300Кб ЗЫ: надо будет как-то доделать, делал даже поиск по мере набора :), но лень файлы резать по первым двум буквам. |
Ответ: Поиск по базе
Можешь выложить? Желательно с сорцами.
|
Re: Поиск по базе
В теории можно извратится так:
Слоздаются папки, по буквам, А, б, в и т.д. В каждой папке находятся файлики. Каждый файл имеет своим названием искомое слово, внутри же - описание, правила, и т.д. Таким образом поиск сведется в проверке наличия в ресурсах файла ".../Буква/слово.txt". Расширанеие естественно взято произвольно. |
Часовой пояс GMT +4, время: 11:14. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot