Алгоритмы поиска подстроки в строке
Состав работы
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Введение. 3
Часть 1. Теоретические сведения об алгоритмах поиска подстроки в строке. 5
1.1. Основные понятия. 5
1.1.1 Строка, её длина, подстрока. 5
1.1.2. Понятие о сложности алгоритма. 6
1.2. Алгоритмы основанные на методе последовательного поиска. 7
1.2.1. Алгоритм последовательного (прямого) поиска (The Brute Force Algorithm). 7
1.2.2. Алгоритм Рабина. 7
1.3. Алгоритм Кнута - Морриса - Пратта (КМП). 10
1.4. Алгоритм Бойера – Мура и некоторые его модификации. 13
1.4.1. Алгоритм Боейера – Мура. 13
1.4.2. Модификации БМ. 15
1.5. Поиск подстрок с помощью конечного автомата. 17
1.5.1. Структура автомата. 17
1.5.2. Пример построения конечного автомата. 19
Часть 2. Экспериментальный анализ алгоритмов. 21
2.1. Суть эксперимента. 21
2.2. Результаты и анализ эксперимента. 22
Заключение. 24
Библиографический список. 25
Введение
Те, кому приходиться часто работать с текстовыми редакторами, знают цену функции нахождения нужных слов в тексте, существенно облегчающей редактирование документов и поиск нужной информации. Действительно, современные программы обработки текста приучили нас к такой удобной возможности, как поиск и замена фрагментов, и если вы разрабатываете подобную программу, пользователь вправе ожидать, что вы предоставите в его распоряжение соответствующие команды.
Конечно, сейчас функции поиска инкапсулированы во многие языки программирования высокого уровня – чтобы найти строчку в небольшом тексте вы, наверное, используете встроенную функцию. Но если такого рода поиск является ключевой задачей вашей программы, знать принципы организации функций поиска будет совсем нелишне. При этом. в готовых подпрограммах далеко не всегда все написано лучшим образом. Во-первых, в стандартных функциях не всегда используются самые эффективные алгоритмы, а во-вторых, вполне возможно, что вам понадобится изменить стандартное поведение этих функций (например, предусмотреть возможность поиска по шаблону). Наконец, область применения функции поиска не ограничивается одними лишь текстовыми редакторами. Следует отметить использование алгоритмов поиска при индексации страниц поисковым роботом, где актуальность информации напрямую зависит от скорости нахождения ключевых слов в тексте html – страницы [9, с. 10]. Работа простейшего спам – фильтра, заключается в нахождении в тексте письма фраз таких, как «Миллион за час» или «Раскрутка сайта». Все вышесказанное говорит об актуальности проблемы, затрагиваемой работой.
Часть 1. Теоретические сведения об алгоритмах поиска подстроки в строке. 5
1.1. Основные понятия. 5
1.1.1 Строка, её длина, подстрока. 5
1.1.2. Понятие о сложности алгоритма. 6
1.2. Алгоритмы основанные на методе последовательного поиска. 7
1.2.1. Алгоритм последовательного (прямого) поиска (The Brute Force Algorithm). 7
1.2.2. Алгоритм Рабина. 7
1.3. Алгоритм Кнута - Морриса - Пратта (КМП). 10
1.4. Алгоритм Бойера – Мура и некоторые его модификации. 13
1.4.1. Алгоритм Боейера – Мура. 13
1.4.2. Модификации БМ. 15
1.5. Поиск подстрок с помощью конечного автомата. 17
1.5.1. Структура автомата. 17
1.5.2. Пример построения конечного автомата. 19
Часть 2. Экспериментальный анализ алгоритмов. 21
2.1. Суть эксперимента. 21
2.2. Результаты и анализ эксперимента. 22
Заключение. 24
Библиографический список. 25
Введение
Те, кому приходиться часто работать с текстовыми редакторами, знают цену функции нахождения нужных слов в тексте, существенно облегчающей редактирование документов и поиск нужной информации. Действительно, современные программы обработки текста приучили нас к такой удобной возможности, как поиск и замена фрагментов, и если вы разрабатываете подобную программу, пользователь вправе ожидать, что вы предоставите в его распоряжение соответствующие команды.
Конечно, сейчас функции поиска инкапсулированы во многие языки программирования высокого уровня – чтобы найти строчку в небольшом тексте вы, наверное, используете встроенную функцию. Но если такого рода поиск является ключевой задачей вашей программы, знать принципы организации функций поиска будет совсем нелишне. При этом. в готовых подпрограммах далеко не всегда все написано лучшим образом. Во-первых, в стандартных функциях не всегда используются самые эффективные алгоритмы, а во-вторых, вполне возможно, что вам понадобится изменить стандартное поведение этих функций (например, предусмотреть возможность поиска по шаблону). Наконец, область применения функции поиска не ограничивается одними лишь текстовыми редакторами. Следует отметить использование алгоритмов поиска при индексации страниц поисковым роботом, где актуальность информации напрямую зависит от скорости нахождения ключевых слов в тексте html – страницы [9, с. 10]. Работа простейшего спам – фильтра, заключается в нахождении в тексте письма фраз таких, как «Миллион за час» или «Раскрутка сайта». Все вышесказанное говорит об актуальности проблемы, затрагиваемой работой.
Другие работы
Учет движения материальных ценностей
Qiwir
: 30 декабря 2014
Все хозяйственные операции, проводимые организацией, согласно статье 9 Федерального закона от 21 ноября 1996 года №129-ФЗ «О бухгалтерском учете» (далее - Федеральный закон №129-ФЗ), должны оформляться оправдательными документами. Эти документы являются первичными документами, на основании которых ведется бухгалтерский учет.
Хозяйственные операции, не оформленные первичными учетными документами, не принимаются к учету и не подлежат отражению в регистрах бухгалтерского учета.
Первичные учетные
10 руб.
Україна в системі сучасних міжнародних відносин та світовому геополітичному просторі
DocentMark
: 10 сентября 2013
УКРАЇНА В СИСТЕМІ СУЧАСНИХ МІЖНАРОДНИХ ВІДНОСИН ТА СВІТОВОМУ ГЕОПОЛІТИЧНОМУ ПРОСТОРІ
Міжнародна політика і міжнародні відносини є однією із найважливіших сфер кожного суспільства. Виникли вони із появою націй, держав, їх союзів, пройшовши при цьому нелегкий шлях становлення. Тернисту дорогу розбудови своєї зовнішньої політики пройшла і молода самостійна українська держава.
Маючи найбільшу територію в Європі, посідаючи п’яте місце за чисельністю населення, будучи розташованою у її центральній ч
Система тарифообложения на таможенный неторговый оборот
Qiwir
: 28 декабря 2013
Содержание
Введение
Глава 1. Теоретические аспекты таможенных пошлин неторгового оборота
1.1 Принципы таможенного оформления ввозимых товаров для личного пользования
1.2 Таможенные пошлины неторгового оборота в историческом развитии (до вступления в ТС)
1.3 Таможенные пошлины неторгового оборота в рамках Таможенного союза
Глава 2. Анализ таможенных платежей неторгового оборота
2.1 Таможенные платежи неторгового оборота на примере ввоза автомобиля для личного пользования
Заключение
Библи
10 руб.
Инженерная графика. Задание №64. Вариант №21. Задача №4. Корпус
Чертежи
: 19 апреля 2021
Все выполнено в программе КОМПАС 3D v16.
Боголюбов С.К. Индивидуальные задания по курсу черчения.
Задание 64. Вариант 21. Задача 4. Корпус
В данной задаче необходимо выполнить ступенчатый разрез, заменив им один из видов, на котором он не указан.
В состав работы входят три файла:
- 3D модель детали;
- ассоциативный чертеж детали в двух видах с выполненным ступенчатым разрезом;
- аналогичный обычный чертеж.
*.rar - это разрешение файла семейства архивов. Все файлы данной работы помещены в ар
65 руб.