Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая аисд.docx
Скачиваний:
0
Добавлен:
06.10.2025
Размер:
724.22 Кб
Скачать

МИНОБРНАУКИ РОССИИ

САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ

ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

«ЛЭТИ» ИМ. В. И. УЛЬЯНОВА (ЛЕНИНА)

Курсовая работа по дисциплине «Алгоритмы и структуры данных» Тема: Реализация алгоритма поиска минимального остова на основе алгоритма Краскала

Студентка гр. 2395 ____________ Кузьмичева Ю.И.

Преподаватель ____________ Пелевин М. С.

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

2023

Задание на курсовую работу

Студентка Кузьмичева Ю.И.

Группа 2395

Тема работы: Реализация алгоритма поиска минимального остова на основе алгоритма Краскала (Крускала).

Исходные данные:

Разработать программу для поиска минимального остова дерева с использованием алгоритма Краскала. Вывести результат в виде отсортированных по имени пар и суммарный вес графа. Максимальный размер входных данных: 50 вершин. Вершины могут быть заданы любой текстовой последовательностью без пробелов. Вес ребра ограничен интервалом от 1 до 1023 включительно.

Содержание пояснительной записки:

«Содержание», «Введение», «Основная часть», «Заключение», «Список использованных источников», «Приложение A ̶ полный код».

Предполагаемый объем пояснительной записки:

Не менее 20 страниц.

Дата выдачи задания: 03.12.2023

Дата сдачи курсового проекта: 22.12.2023

Дата защиты курсового проекта: 22.12.2023

Студент

Кузьмичева Ю.И.

Преподаватель

Пелевин М. С.

АННОТАЦИЯ

Алгоритма Краскала — это алгоритм поиска минимального остовного дерева в связном неориентированном графе. Алгоритм Краскала работает на основе жадной стратегии, то есть на каждом шаге выбирает ребро с минимальным весом, которое не создаст цикл в графе, и добавляет его в остовное дерево. Этот процесс продолжается до тех пор, пока все вершины графа не будут связаны между собой или пока не будет достигнута заданная степень связности.

Задача: разработать на языке C++ консольное приложение для нахождения минимального остова графа. В отчете присутствует исходный код программы.

SUMMARY

Kraskal's algorithm is an algorithm for finding the minimum spanning tree in a connected undirected graph. Kraskal's algorithm works on the basis of a greedy strategy, that is, at each step it selects an edge with a minimum weight that will not create a cycle in the graph, and adds it to the spanning tree. This process continues until all vertices of the graph are connected to each other or until a given degree of connectivity is reached.

Task: to develop a console application in C++ to find the minimum backbone of a graph. The report contains the source code of the program.

СОДЕРЖАНИЕ

Введение 5

1. Алгоритм Крускала и определение графа 6

2. Структура ребра 7

3. Структура графа 7

4. Сортировка пузырьком 8

5. Обход графа 9

6. Чтение матрицы смежности из файла 10

7. Список смежности 11

8. Матрица инцидентности 12

9. Сортировка ребер в лексикографическом порядке 13

10. Оценка общей временной сложности 14

Заключение 14

Список использованных источников 15

Приложение А: Исходный код программы 16

Приложение В: Пример работы программы 26

Соседние файлы в предмете Алгоритмы и системы данных