Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Sekunda13
0 / 0 / 0
Регистрация: 02.05.2017
Сообщений: 3
1

Ориентированный граф и матрица инцидентности

02.05.2017, 11:11. Просмотров 1899. Ответов 1

Вот у меня есть такое прекрасное задание:

Базовый класс: Элемент ориентированного графа.
Производные классы: дуга и вершина ориентированного графа.
Виртуальная функция: вывод информации об элементе графа.
Ключевая функциональность класса-контейнера: получение матрицы инцидентности.


Хотелось бы узнать что подразумевает под собой элемент графа, как его связать с дугой и вершиной при помощи виртуальной функции и самое главное, каким логичным образом, без использованием заранее сгенерированного массива на огромную тучу элементов, возможно создать матрицу инцидентности.

Буду весьма благодарен за ваши ответы.
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2017, 11:11
Ответы с готовыми решениями:

Задача на ориентированный граф
Ребята, спасайте! обычно я прихожу сюда с недоделанным кодом/кодом в котором что-то неправильно...

Из матрицы смежности сделать ориентированный граф
Какаю библиотеку использовать что би нарисовать граф?Возможно есть готов код ,буду очень...

Ориентированный граф. Получить из списка рёбер матрицу смежности
Задача: Простой ориентированный граф задан списком ребер, выведите его представление в виде матрицы...

Проверить, является ли ориентированный граф, с заданным количеством узлов и рёбер, деревом
Дан ориентированный граф из n узлов и m рёбер. Проверить, является ли он деревом. Помогите...

Дан ориентированный граф. Найти все сильно связные компоненты графа
Есть вот такой код, очень прошу исправить под задание в теме поста Спасибо заранее! #include...

1
MrGluck
Форумчанин
Эксперт CЭксперт С++
8136 / 4987 / 1436
Регистрация: 29.11.2010
Сообщений: 13,460
02.05.2017, 12:30 2
Лучший ответ Сообщение было отмечено Sekunda13 как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class GraphElement
{
public:
    virtual ~GraphElement() = default;
    virtual void print() const = 0;
};
 
class Vertex : public GraphElement
{
public:
    void print() const override
    {
        // ...
    }
};
 
class Edge : public GraphElement
{
public:
    void print() const override
    {
        // ...
    }
};
Добавлено через 4 минуты
Цитата Сообщение от Sekunda13 Посмотреть сообщение
каким логичным образом, без использованием заранее сгенерированного массива на огромную тучу элементов, возможно создать матрицу инцидентности.
Выделить память динамически/использовать вектор.
C++
1
2
3
4
5
6
7
8
9
10
11
12
int M, N;
std::cin >> M >> N;
// выделяем память под M строк для матрицы инцидентости
int **incidenceMatrix = new int*[M];
for (int row = 0; row < M; row++)
{
    // для каждой строки выделяем память под N элементов
    incidenceMatrix[row] = new int[N];
    // считываем значения
    for (int column = 0; column < N; column++)
        std::cin >> incidenceMatrix[row][column];
}
1
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.05.2017, 12:30

Дан ориентированный граф, нужно на выходе получить матрицу кратчайших путей
Добрый день,задача состоит в следующем: Дан ориентированный граф(матрица смежности с...

Можно ли задать взвешеный граф матрицой инцидентности?
Можно ли задать взвешеный граф матрицой инцидентности?

Дан ориентированный взвешенный граф. Найдите кратчайшее расстояние от одной заданной вершины до другой
В первой строке содержатся три числа: N, S и F (1≤N≤100, 1≤S,F≤N), где N — количество вершин графа,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.