我目前正在尝试从网上和一位朋友那里学习一些图论,他让我研究了一种特定的图结构,现在我想使用struct实现Dijkstra的算法,但是我不知道该怎么做。我了解Dijkstra的纸面理论,但无法将其解释为代码
下面是用于定义图形的头文件
typedef struct edge {
int to_vertex;
float weight;
} Edge;
typedef struct edgeNode {
Edge edge;
struct edgeNode *next;
} *EdgeNodePtr;
typedef struct edgeList {
EdgeNodePtr head;
} EdgeList;
typedef struct graph {
int V;
int *vertex_types;
EdgeList *edges;
} Graph;