Программа для построения графов

Задание

Разработать программу для построения ориентированных графов на языке программирования C#.

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

Программа для построения графов
Построение графов - код

Процесс

Созданы инструменты для построения графа: выбор вершины, добавление вершины, рисование ребра, удаление элемента, удаление всего графа.

Нахождение элементарных цепей и циклов осуществляется с помощью модифицированного алгоритма «поиск в глубину» (DFS).

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