Слайд 2Задание на лабораторную работу
ПОДГОТОВКА
1. Скопировать на локальный диск файл Lab14_2019.zip
2. Распаковать все
файлы
3. Из папки Sources_Lab14_2019 загрузить решение Lab14_2019.sln
Слайд 3Задание на лабораторную работу (2)
4. Открыть все файлы из проекта
Слайд 4Задание на лабораторную работу (3)
5. Закомментировать исходный текст файла Source4.cpp
Для этого
А)
Выделить весь текст Ctrl+A
Б) Закомментировать выделенный фрагмент Ctrl+K, Ctrl+C
Слайд 5Задание на лабораторную работу (4)
6. Раскомментировать исходный текст файла DictGen.cpp
Для этого
А)
Выделить весь текст Ctrl+A
Б) Раскомментировать выделенный фрагмент Ctrl+K, Ctrl+U
Слайд 6Задание на лабораторную работу (5)
7. Найдите функцию main в файле DictGen.cpp
Слайд 7Задание на лабораторную работу (6)
8. Замените пути к файлам Tolkien.txt и dict2.txt
на путь к папке, куда был фактически положен распакованный файл Tolkien.txt
Слайд 8Задание на лабораторную работу (7)
9. Соберите код и запустите его на выполнение
Слайд 9Задание на лабораторную работу (8)
10. В ходе выполнения будет выведено примерно это:
Слайд 10Задание на лабораторную работу (9)
11. По итогам выполнения будет выведено примерно это:
Слайд 11Задание на лабораторную работу (10)
12. Закройте окно с консолью работающей программы
13. Любым
файловым менеджером загляните в папку, где должен создастся файл словаря. Убедитесь, что он создался:
Слайд 12Задание на лабораторную работу (11)
14. Откройте файл со словарем, чтобы убедиться, что
он содержит корректные данные
Слайд 13Задание на лабораторную работу (12)
Вы готовы начать эксперименты с обработкой текстовых файлов!
Но
сначала подготовим еще несколько файлов со словарями!
Слайд 14Задание на лабораторную работу
ВТОРАЯ ЧАСТЬ ПОДГОТОВКИ
1) Нужно аналогичным способом создать файл dict1.txt
на основе файла Alice.txt.
Оба созданных словаря содержат неотсортированную последовательность слов.
Слайд 15Задание на лабораторную работу
ВТОРАЯ ЧАСТЬ ПОДГОТОВКИ (2)
2) Нужно создать на основе файла
Tolkien.txt отсортированную версию словаря dict22.txt
Для этого нужно найти в теле функции main() вызов функции shuffle (именно эта функция перемешивает слова в словаре) и закомментировать ее:
После чего нужно изменить имя выходного файла на “dict22.txt” и запустить на выполнение
Слайд 16Задание на лабораторную работу
ВТОРАЯ ЧАСТЬ ПОДГОТОВКИ (3)
В итоге получится примерно такой файл:
Слайд 17Задание на лабораторную работу
ВТОРАЯ ЧАСТЬ ПОДГОТОВКИ (4)
3) аналогичным способом создать файл dict12.txt
на основе файла Alice.txt, содержащий отсортированную последовательность слов.
Слайд 18Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА
Нужно закомментировать текст файла DictGen.cpp
Слайд 19Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (2)
2) Нужно раскомментировать текст файла Source.cpp
Слайд 20Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (3)
3) Нужно заменить пути к входным
и выходным файлам на папку, которая реально содержит словарь dict2.txt и файл Alice.txt.
Слайд 21Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (4)
Должно получится примерно так:
Слайд 22Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (5)
4) Пересоберите код и запустите на
выполнение
Результат выполнения будет выглядеть примерно так:
Слайд 23Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (6)
5) Найдите сгенерированный HTML файл и
откройте его:
Слайд 24Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (7)
6) Найдите и откройте файл «Время_работы_разных_структур_данных.xlsx»
Слайд 25Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (8)
7) Откройте страницу «Несортированный массив»
8) Внесите
в ячейку B3 значение времени, потраченного на обработку файла
Слайд 26Задание на лабораторную работу
ПЕРВАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (9)
Вы успешно начали работу по сравнению
скорости выполнения разных алгоритмов!
Слайд 27Задание на лабораторную работу
ВТОРАЯ ЧАСТЬ ЭКСПЕРИМЕНТА
Вам нужно заполнить все страницы файла «Время_работы_разных_структур_данных.xlsx»
Нужно
иметь в виду, что храниться в исходных файлах проекта:
Source.cpp – словарь реализован на неотсортированном массиве.
Source1.cpp – словарь реализован на списке.
Source2.cpp – словарь реализован на дереве.
Source3.cpp – словарь реализован на отсортированном массиве и двоичном (бинарном) поиске в отсортированном массиве.
Source4.cpp – словарь реализован на хэше (хэш-таблице) - https://ru.wikipedia.org/wiki/%D0%A5%D0%B5%D1%88-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0.
Каждому варианту реализации словаря соответствует своя собственная страница в «Время_работы_разных_структур_данных.xlsx»
Слайд 28Задание на лабораторную работу
ВТОРАЯ ЧАСТЬ ЭКСПЕРИМЕНТА (2)
Каждый вариант реализации словаря нужно проверить
на всех наборах данных
А) Тексты Alice.txt, Tolkien.txt и Tolkien2.txt
Б) На разных вариантах словарей – неотсортированных и отсортированных
Слайд 29Задание на лабораторную работу
ТРЕТЬЯ ЧАСТЬ ЭКСПЕРИМЕНТА
Нужно найти свои два текстовых файла –
один меньше, другой больше.
Сделать на основе меньшего файл словаря. (Оба файла должны содержать только латинские буквы. Т.е. текст должен быть на английском языке)
И провести дополнительных эксперименты для этих файлов, и выбранных вами алгоритмов.
Результаты также нужно внести в таблицу
Слайд 30Задание на лабораторную работу
ПОДВЕДЕНИЕ ИТОГОВ ЭКСПЕРИМЕНТА
Откройте страницу «СВОДНАЯ» и внесите сюда всю
необходимую обобщающую информацию по всем этапам эксперимента.