<Р> Подграф Т = (V1, E1) из G является каркас из G тогда и только тогда,
<р> dijkstar'salgorithm жадный метод получения кратчайший путь между каждой вершины из начальной вершины и минимальное покрывающее дерево. Это создает дерево края по краю.
Критерии выбора край, что приводит к увеличению минимальной в сумме расходов на краях до сих пор, включенных
<р> Алгоритм: -.
<Р> Алгоритм задается длина матрицы график, который содержит информацию о всей длине графики края. Алгоритм начинается с начальной вершиной V <югу> 0 с каждого v трех величин, связанных. Statusdenoted по статусу [v], который будет либо '!'
<Р> означает кратчайший путь к V V <суб> 0 должно быть найдено, '?' Означает, что он не имеет. Distancedenoted по Расст [V] представляет длину кратчайшего пути от v к V <суб> 0 найдено.
Так далеко nextvertex обозначается следующего V будет быстрый вершину на пути к V <суб> 0 по кратчайшему пути нашли так далеко от ВТО против <суб> 0.
<Р> /* ИНИЦИАЛИЗАЦИИ * /<бр > <р> Статус [v <суб> 0] = '!'
<р> расстояние [v <суб> 0] = 0
<р> следующая [v <суб> 0] = '*'
<р> для всех v ≠ v <суб> 0
<р> Статус [v] = '?'
<р> расстояние [v] = L (V, V <суб> 0)
<р> следующая [v] = v <суб> 0
<р> конец для
<р> /* обработка * /Сеть <р> ибо остаются? вершины
<р> v * =? вершина, для которой расстояние является наименьшим
<р> Статус [v *] = '!'
<р> для каждого оставшегося? вершина v
<р>, если расстояние [v]> расстояние [v *] + L (V *, v)
<р> расстояние [v]> расстояние [v *] + L (V *, v )
<р> следующая [v] = V *
<р> конец, если
<р> конец для
<р> конец для
<р> Программа Код: - < ш>
#include
<р> #include
<р> силы основных ()
<р> {
<р> Int в [17] [17], I, J , п, расстояние [12], мин, R, S = 0;
<р> Статус символ [12], в следующий [12], v0, v [12], v1,
<р> clrscr ( );
<р> Е ("\\ п \\ т \\ т \\ tDIJKSTAR'S АЛГОРИТМ");
<р> Е ("\\ п \\ т \\ т \\ т ---------- ---------- \\ п \\ п ");
<р> Е (" \\ nВведите число вершин: ");
<р> зсапЕ ("% d ", & п );
<р> Е ("\\ nВведите длина матрица графике: \\ п");
<р> для (я = 0; я
<р> для