Синергия, Структуры и алгоритмы компьютерной обработки данных, задание 1

Раздел
Программирование
Просмотров
45
Покупок
0
Антиплагиат
Не указан
Размещена
28 Янв в 10:42
ВУЗ
Синергия
Курс
2 курс
Стоимость
200 ₽
Демо-файлы   
1
pdf
4_algo_dzdocx 4_algo_dzdocx
1.5 Мбайт 1.5 Мбайт
Файлы работы   
1
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
docx
задание 1
128.8 Кбайт 200 ₽
Описание

Решение Задание №1

Оглавление

Задание №1

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

1. Считайте количество вершин и ребер графа:

int n, m; // количество вершин и ребер

cout << "Enter the number of vertices and edges: ";

cin >> n >> m;

2. Создайте структуры данных для хранения графа: список смежности и матрицу

смежности:

vector<vector<pair<int, int>>> adj_list(n + 1); // список смежности

vector<vector<int>> adj_matrix(n + 1, vector<int>(n + 1)); // матрица смежности

3. Считайте ребра графа и добавьте их в список смежности и матрицу смежности:

cout << "Enter the edges (vertex1 vertex2 weight):" << endl;

for (int i = 0; i < m; i++) {

int v1, v2, w;

cin >> v1 >> v2 >> w;

// добавляем ребро в список смежности

adj_list[v1].push_back({ v2,w });

adj_list[v2].push_back({ v1,w });

// добавляем ребро в матрицу смежности

adj_matrix[v1][v2] = w;

adj_matrix[v2][v1] = w;

}

4. Выведите список смежности на экран:

cout << "Adjacency list:" << endl;

for (int i = 1; i <= n; i++) {

cout << i << ": ";

for (auto j : adj_list[i]) {

cout << "(" << j.first << ", " << j.second << ") ";

}

cout << endl;

}

5. Выведите матрицу смежности на экран:

cout << "Adjacency matrix:" << endl;

for (int i = 1; i <= n; i++) {

for (int j = 1; j <= n; j++) {

cout << adj_matrix[i][j] << " ";

}

cout << endl;

}

6. У вас должна получиться следующая программа:

Протестируйте программу. Отправьте преподавателю скриншот консоли.

Вам подходит эта работа?
Похожие работы
Основы программирования
Отчет по практике Практика
31 Янв в 15:25
30
0 покупок
Основы программирования
Задача Задача
30 Янв в 12:26
35
0 покупок
Основы программирования
Тест Тест
30 Янв в 09:53
33
0 покупок
Основы программирования
Задача Задача
29 Янв в 21:00
26
0 покупок
Основы программирования
Курсовая работа Курсовая
29 Янв в 12:48
33
0 покупок
Другие работы автора
Бизнес-планирование
Тест Тест
31 Янв в 05:45
28
0 покупок
Управление персоналом
Тест Тест
30 Янв в 16:39
41 +4
0 покупок
Маркетинг
Тест Тест
30 Янв в 12:57
33 +1
0 покупок
Налоги, налогообложение и налоговое планирование
Тест Тест
28 Янв в 15:00
51 +1
2 покупки
Основы программирования
Задача Задача
28 Янв в 13:57
53 +2
0 покупок
Основы программирования
Задача Задача
28 Янв в 13:53
46 +1
0 покупок
Основы программирования
Задача Задача
28 Янв в 13:51
44 +1
0 покупок
Основы программирования
Задача Задача
28 Янв в 13:47
38 +1
0 покупок
Аудит
Тест Тест
27 Янв в 05:47
44 +2
2 покупки
Интернет-маркетинг
Тест Тест
27 Янв в 05:14
22
0 покупок
Стратегический менеджмент
Тест Тест
17 Янв в 15:22
107 +2
6 покупок
Экономика предприятия
Ответы на билеты Билеты
17 Дек 2024 в 22:58
71 +1
4 покупки
Основы программирования
Тест Тест
26 Ноя 2024 в 12:16
59 +1
0 покупок
Управление персоналом
Тест Тест
30 Сен 2024 в 05:50
104
4 покупки
Дизайн
Тест Тест
26 Сен 2024 в 02:02
137 +1
4 покупки
Промышленное и гражданское строительство
Тест Тест
18 Сен 2024 в 18:14
123
4 покупки
Прикладная математика
Тест Тест
18 Сен 2024 в 04:18
152
3 покупки
Темы журнала
Показать ещё
Прямой эфир