powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Словарь пар "слово-позиция"
7 сообщений из 7, страница 1 из 1
Словарь пар "слово-позиция"
    #38043197
Spokane
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Уважаемые, стоит задача составить базу данных для всех слов текстового файла с 2мя полями:
- слово файла
- его позиция в файле
Требуется это для дальнейшего быстрого поиска любого слова в файле. Вопрос: кто-нибудь знает хороший алгоритм?)
...
Рейтинг: 0 / 0
Словарь пар "слово-позиция"
    #38043283
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SpokaneВопрос: кто-нибудь знает хороший алгоритм?)
Только последовательный просмотр.

Можно оптимизировать так, например:

- ключ: слово
- значение: список позиций (№ строки, позиция слова в строке)
...
Рейтинг: 0 / 0
Словарь пар "слово-позиция"
    #38043432
std::multimap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SpokaneДобрый день!
Уважаемые, стоит задача составить базу данных для всех слов текстового файла с 2мя полями:
- слово файла
- его позиция в файле
Требуется это для дальнейшего быстрого поиска любого слова в файле. Вопрос: кто-нибудь знает хороший алгоритм?)
std::multimap<std::string, unsigned int>
...
Рейтинг: 0 / 0
Словарь пар "слово-позиция"
    #38043551
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UsmanSpokaneВопрос: кто-нибудь знает хороший алгоритм?)
Только последовательный просмотр.Ну зачем же? Дерево лучше. А хеш еще лучше. Последовательно проходим по файлу и помещаем каждое слово+позиция либо в дерево, либо просто позицию слова в хеш таблицу. В первом случае получишь O(log n) на последующем поиске, во втором O(1). Всяко лучше чем O(n).
...
Рейтинг: 0 / 0
Словарь пар "слово-позиция"
    #38044645
Spokane
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так уж случилось, что производительность последовательного просмотра оказалась вполне приемлемой. Тем не менее, учту предложенные варианты, спасибо всем откликнувшимся!
...
Рейтинг: 0 / 0
Словарь пар "слово-позиция"
    #38044651
Spokane
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кладу после просмотра пары "слово-позиция" в структуру похожую на словарь
...
Рейтинг: 0 / 0
Словарь пар "слово-позиция"
    #38044760
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Клади, клади. Но не забывай что в более полной постановке,
задача полнотекстового поиска звучит по другому. А именно
- найти множество файлов наиболее релевантных к поисковому
выражению. Для твоей постановки хватит и обычного последовательного
поска. Городить сверх-быстрые алгоритмы нужно только тогда
когда ты будешь работать с этим (!) одним файлом с огромной
скоростью отбивая тысячи транзакций поска в секунду.
Есть у тебя такая постановка? Я думаю - нет.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Словарь пар "слово-позиция"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]