Skip to content

lalka-anka/searching-substring

Repository files navigation

Приложение «Поиск подстроки»
Версия 2.0
Автор: Ильина Анна (anna.ilina. 21.2000@gmail.com)

Описание
Данное приложение является реализацией поиска подстроки в строке. Пользователь может осуществить поиск подстроки, при этом получая статистику по работе всех алгоритмов.

Пользователю доступны 4 алгоритма:

• Алгоритм грубой силы
• Алгоритм Бойера-Мура
• Алгоритм Рабина-Карпа (3 различных хеш-функции) 
• Алгоритм Кнута-Морриса-Пратта

Требования
Python версии не ниже 3.6
Состав:
• Запуск программы: main.py
• Реализация алгоритмов:program.py
• Генератор строк и целых чисел: generator.py
• Статистика времени работы и использования памяти: timing.py
• Тесты: test_program.py
• Создание csv таблицы: create_csv.py
• Построение графиков 2d: create_2d_graphs.py
• Построение графиков 3d: create_3d_graphs.py

Справка по запуску:
python3 geocoder.py --help

Пример запуска:

python3 main.py -alg bf -st primer -sub rim  -- результат поиска будет выведен на консоль, статистика появится в виде графиков

python3 main.py -alg bf -st primer -sub rim -file name_file.csv -- результат поиска будет выведен на консоль, статистика появится в виде таблицы в файле name_file.csv

python3 main.py -alg bf -doc read_from_file.txt  -- данные для поиска считаются из файла read_from_file.txt, результат поиска будет выведен на консоль, статистика появится в виде графиков

python3 main.py -alg bf -doc read_from_file.txt -file name_file.csv -- данные для поиска считаются из файла read_from_file.txt, результат поиска будет выведен на консоль, статистика появится в виде таблицы в файле name_file.csv

python3 main.py -- данные для поиска будут запрошены у пользователя, статистика появится в виде графиков

python3 main.py -file name_file.cs -- данные для поиска будут запрошены у пользователя, статистика появится в виде таблицы в файле name_file.csv

About

Python program for research of searching algorithms.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages