В настоящее время я пытаюсь создать программу для алгоритма Дейкстры. У меня возникли проблемы с пониманием того, как создать график для алгоритма.алгоритм dijkstra с использованием матрицы смежности
У меня возникли проблемы с реализацией этого графика.
Я хочу создать функцию, называемую
add_edge(G, Source, destination, weight);
Я хочу использовать эту функцию, чтобы создать свой график таким образом, я могу позже создать случайный граф. Например, я хотел бы сделать это:
add_edge(G,1,2,3);
add_edge(G,1,6,5);
add_edge(G,2,3,7);
etc.
Первое, что я думаю сделать, это создать G, но я не уверен в том, как это сделать. Я имею в виду, чтобы сделать еще одну функцию, называемую конструкцию, которая была бы равна G, такие как:
G = construct(Vertices);
Я просто уверен в том, как построить это.
Если кто-то может помочь мне понять эти две функции, это будет большой помощью!
IMO матрица, что вы показали, можно увидеть в виде графика, как это имеет всю информацию, содержащуюся в нем. –
Мне жаль, но я не понимаю, что вы имеете в виду. – user081608
Сама матрица представляет весь график, где матрица [i] [j] - это стоимость направленного ребра от узла i до узла j. –