Скачиваний:
0
Добавлен:
03.11.2025
Размер:
1.14 Mб
Скачать

Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации

Федеральное государственное бюджетное образовательное учреждение Высшего образования «Санкт-Петербургский государственный университет

телекоммуникаций им. Проф. М.А. Бонч-Бруевича» (СПбГУТ)

Факультет Инфокоммуникационные сети и системы Кафедра Программной инженерии

Лабораторная работа №3

По дисциплине: Алгоритмические основы программной инженерии

Тема: Сортировка чисел в файле

Выполнил студент: Яковлев М. А. ИКПИ-32

Принял работу: Ерофеев С. А.

Дата выполнения: 25 сентября 2024 г.

Санкт-Петербург 2024 г.

Лабораторная работа №3

Тема: Сортировка чисел в файле Выполнил: Яковлев М. А. Группа: ИКПИ-32

Техническое задание

Цель программы – провести сортировку чисел из файла по так называемой сортировке Бабушкина, но нужно добавить работу через дек. Цель работы — подсчитать теоретическую и практическую сложность программы. Мы будем работать с вещественными числами, деком и системами счисления. Работа выполняется в Visual Studio 2022, версии 5.2

Схема алгоритма

Спецификатор переменных

numbers, result — строки, это последовательности символов Unicode любой длины, заключённые в одинарные, двойные или тройные кавычки

index, max_val, n, i, number — целый численный тип.

deque, digits, Babushkin_sort — переменные для работы с деком.

Программа на C++

Оценка сложности алгоритма

Теоретическая оценка сложности алгоритма:

1+1+1+1+1 — Библиотеки и константа 1+1+1 — struct Number

1+1+1+1+1 — struct Deque 1+1+1 — initDeque

1+1+1 — isEmpty

1+1+1+1 — isFull

1+1+1+1+1 — insertRear

1+1+1+1 — deleteFront 1+1+1+1+1+n*(1+1+1)+n*(1+1+1)+n*n*(1+1+1+1)+1+n+1 — Babushkin_sort

1+1+1+1+1+1+1+1+1+1+n+1+1+1+n*(1+1)+1+1+1+1+1+1 — main T(n)=4n²+9n+58

O(n)=n²

Практическая оценка сложности алгоритма:

Замерим время выполнения программы при увеличении количества элементов в файле, после чего построим график и сравним его с графиком квадратичной зависимости:

Тестирование

Вывод

При поставленной задаче разработать алгоритм для сортировки чисел в файле, которая справлялась бы с поставленной задачей. Работа выполняется в Visual Studio 2022, версии 5.2 Результаты тестов доказывают правильность программы.

Соседние файлы в папке Лабораторные работы. Ерофеев