В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
arturimbo
arturimbo
09.11.2022 04:10 •  Информатика

Даны текстовый файл и некоторое слово. напечатайте те строки файла, которые содержат данное слово. можете подробно рассказать о механизме поиска. только не надо интернета, это все не то. большое ))

Показать ответ
Ответ:
Snowandsand368
Snowandsand368
02.10.2020 11:02
Механизмы поиска могут быть различными. Конкретный механизм зависит от различных факторов, таких как, количество планируемых поисков, объем текстового файла, условия поиска и т.д.
1. Однократный поиск в соответствии с условиями задачи.
В этом случае нет смысла в использовании сложных алгоритмов и/или  предварительной подготовке файла. Чем сложнее алгоритм, тем больше будут затраты труда и времени на написание и отладку программы. Наилучшее решение - последовательный просмотр строк файла с поиском первого вхождения в строку заданного контекста. Большинство языков программирования имеет встроенную функцию или процедуру поиска подстроки в строке, например Pos() в языке Паскаль, поэтому задача сводится к единственному циклу "Повторять пока не встретился конец файла: читать строку, искать в строке контекст и что-то с ним сделать".
2. Многократный поиск в файле различных контекстов.
Здесь используются специально разработанные методы, основанные на предшествующем построении дополнительных структур, таких, как индексы, деревья поиска и т.д. Их общий смысл в том, что для поиска сначала просматриваются эти вс структуры (которые, к тому же, упорядочены для ускорения поиска) и зачастую к самому файлу можно вообще не обращаться. Для понимания аналогии можно вспомнить поиск нужного слова в словаре. Сначала мы выбираем первую букву, затем ищем страничку, которая содержит слова, между которыми находится наше искомое, а потом просматриваем найденную страницу.
0,0(0 оценок)
Ответ:
Milana2461
Milana2461
02.10.2020 11:02
Существует множество алгоритмов поиска, самый легкий, но самый долгий - брут-форс. Полное перебирание всех символов строки.
Например, есть строка 99 Bottles of beer on the wall и ищется подстрока (слово) the. Тогда идет полный перебор. Сравнивается первый символ слова (t) и каждый символ строки. Если символы совпали, то сравнивается следующий символ строки и следующий символ слова (h) и так далее. Если все символы слова совпали, то в строке оно содержится. Брут-форс - самый неэффективный алгоритм, т. к. время его работы линейно зависит от длины строки.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота