努力学习的小马 2023-04-04 10:53 采纳率: 85.7%
浏览 22
已结题

关于有向图邻接表的一个问题


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的含义是什么?具体作用是啥?顶点表中的三个参数又分别代表什么意思啊?这应该是一段模板代码,有没有可参考的文章?

  • 写回答

2条回答 默认 最新

  • GameTomato 2023-04-04 11:22
    关注

    根据提供的代码,可以做如下解释:
    1.Position:指向链表节点的指针
    2.List:链表的指针
    3.List *TheLists:一个指向链表头节点的数组指针,用于存储图的邻接表
    4.顶点表中的三个参数
    1)known:表示该顶点的最短路径是否已经知道,若初始值为0,表示不知道
    2)Dist:表示源点到该顶点的最短路径长度,初始值为无穷大。
    3)Path:表示源点到该顶点的最短路径上的前一个顶点,初始值为NULL

    这段代码是用来求解最短路径问题的,可以尝试搜搜有关Dijkstra算法的文章
    希望能帮到你~~加油

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月13日
  • 已采纳回答 4月5日
  • 创建了问题 4月4日