typedef struct ListNode *Position;//位置
typedef Position List;//链表
//邻接表
struct Tbl
{
int TableSize;
List *TheLists;
};
//顶点表
struct VertexTable
{
int known;
int Dist;
Vertex Path;
};
这段代码是有向图邻接表的一小部分,请问上面这段代码中,Position是指向链表节点的一个指针,List与Position相同,但List *TheLists的含义是什么?具体作用是啥?顶点表中的三个参数又分别代表什么意思啊?这应该是一段模板代码,有没有可参考的文章?
根据提供的代码,可以做如下解释:
1.Position:指向链表节点的指针
2.List:链表的指针
3.List *TheLists:一个指向链表头节点的数组指针,用于存储图的邻接表
4.顶点表中的三个参数
1)known:表示该顶点的最短路径是否已经知道,若初始值为0,表示不知道
2)Dist:表示源点到该顶点的最短路径长度,初始值为无穷大。
3)Path:表示源点到该顶点的最短路径上的前一个顶点,初始值为NULL
这段代码是用来求解最短路径问题的,可以尝试搜搜有关Dijkstra算法的文章
希望能帮到你~~加油