Ориентированный граф (кратко орграф) — (мульти) граф, рёбрам которого присвоено направление. Направленные рёбра именуются также дугами, а в некоторых источниках и просто рёбрами. Граф, ни одному ребру которого не присвоено направление, называется неориентированным графом или неорграфом.
Формально, орграф состоит из множества, элементы которого называются вершинами, и множества упорядоченных пар вершин , элементы которого называются дугами.
Дуга инцидентна вершинам и . При этом говорят, что — начальная вершина дуги, а — конечная вершина.
Орграф, полученный из простого графа ориентацией рёбер, называется направленным. В отличие от последнего, в произвольном простом орграфе две вершины могут соединяться двумя разнонаправленными дугами.
Маршрутом в орграфе называют чередующуюся последовательность вершин и дуг, вида (вершины могут повторяться). Длина маршрута — количество дуг в нём.
Путь есть маршрут в орграфе без повторяющихся дуг, простой путь — без повторяющихся вершин. Если существует путь из одной вершины в другую, то вторая вершина достижима из первой.
Контур есть замкнутый путь.
Для полумаршрута снимается ограничение на направление дуг, аналогично определяются полупуть и полуконтур.
Орграф сильно связный, или просто сильный, если все его вершины взаимно достижимы;
односторонне связный, или просто односторонний, если для любых двух вершин, по крайней мере, одна достижима из другой;
слабо связный, или просто слабый, если при игнорировании направления дуг получается связный (мульти)граф;
Максимальный сильныйподграф называется сильной компонентой; односторонняя компонента и слабая компонента определяются аналогично.
Конденсацией орграфа называют орграф , вершинами которого служат сильные компоненты , а дуга в показывает наличие хотя бы одной дуги между вершинами, входящими в соответствующие компоненты.
Ориентированный граф, полученный из заданного сменой направления рёбер на противоположное, называется обратным.
Изображение и свойства всех орграфов с тремя узлами
Легенда: С — слабый, ОС — односторонний, СС — сильный, Н — является направленным графом, Г — является гамаком (ациклический), Т — является турниром
0 дуг
1 дуга
2 дуги
3 дуги
4 дуги
5 дуг
6 дуг
пустой, Н, Г
Н, Г
ОС
CC
CC
полный, CC
ОС, Н, Г
CC, Н, Т
CC
C, Н, Г
ОС, Н, Г, Т
ОС
C, Н, Г
ОС
ОС
Применение орграфов
Орграфы широко применяются в программировании как способ описания систем со сложными связями. К примеру, одна из основных структур, используемых при разработке компиляторов и вообще для представления компьютерных программ — граф потоков данных.
Алгоритм Суурбалле — алгоритм нахождения двух непересекающихся (не имеющих общих рёбер) путей в ориентированном графе с неотрицательными весами, так что оба пути связывают ту же самую пару вершин и имеют минимальную общую длину.