当前位置: 首页 > 知识库问答 >
问题:

图的邻接表表示

蓝恩
2023-03-14

在斯坦福的一门算法课程中,教授为图的邻接表表示列出了以下成分:

  1. 顶点数组或列表
  2. 边的数组或列表
  3. 顶点列表中的每个顶点都指向其上的边。
  4. 边列表中的每个边都指向其边点。

这种表示法与图形的“关联表”表示法相同吗?如果是,为什么本文认为“邻接表”和“发生率表”是分开的?

共有1个答案

田鹤轩
2023-03-14

我猜这篇文章的作者将把这种结构称为关联列表,因为节点通过边而不是直接链接到其他节点。关联列表/邻接列表的区分是不标准的,而且也不是很有用,因为这两种结构都具有相似的性能特征,而且如果去掉列表ADT,就不清楚这种区分是否有充分的依据。

 类似资料:
  • 我在这里读到,对于无向图,当表示为邻接表时,空间复杂度是,其中和分别是顶点和边的个数。 我的分析是,对于一个完全连通的图,列表中的每个条目将包含节点,那么我们总共有顶点,因此,空间复杂度似乎是这似乎是我在这里遗漏了什么?

  • 在书中,他们做过这样的宣示: 我应该如何将下面图的输入作为邻接表并输出它的邻接表表示?假设,edge的每个成本是10。

  • 作为一项练习,我必须建立一个卫星导航系统,规划从一个位置到另一个位置的最短和最快路线。它必须尽可能快,而不需要使用太多内存。 我很难决定使用哪种结构来表示图形。我知道矩阵更适合密集图,列表更适合稀疏图。我更倾向于使用列表,因为我认为添加顶点将是这个程序中最累人的部分。 我只是想听听你们的意见。如果我把一个典型的路线图看作一个图形,其中不同的位置是节点,道路是边缘。你认为它是稀疏的还是密集的?在这种

  • 主要内容:邻接表计算顶点的出度和入度通常,图更多的是采用 链表存储,具体的存储方法有 3 种,分别是 邻接表、 邻接多重表和 十字链表。 本节先讲解图的邻接表存储法。邻接表既适用于存储无向图,也适用于存储有向图。 在具体讲解邻接表存储图的实现方法之前,先普及一个"邻接点"的概念。在图中,如果两个点相互连通,即通过其中一个顶点,可直接找到另一个顶点,则称它们互为邻接点。 邻接指的是图中顶点之间有边或者弧的存在。 邻接表存储图的实现方式

  • 实现稀疏连接图的更空间高效的方法是使用邻接表。在邻接表实现中,我们保存Graph 对象中的所有顶点的主列表,然后图中的每个顶点对象维护连接到的其他顶点的列表。 在我们的顶点类的实现中,我们将使用字典而不是列表,其中字典键是顶点,值是权重。 Figure 4 展示了 Figure 2中的图的邻接列表示。 Figure 4 邻接表实现的优点是它允许我们紧凑地表示稀疏图。 邻接表还允许我们容易找到直接连

  • 我遇到了一个将Dijkstras算法的伪代码转换为实际代码的问题。我给出了邻接列表,如“位置-相邻位置-到位置的距离”,一个节点的例子:AAA AAC 180 AAD 242 AAH 40。我的任务是读取一个按邻接列表组织的文件,并计算从一个节点到另一个节点的最短路径。下面是Dijkstra伪代码: 我遇到的最大的麻烦是“对于与v相邻的每个顶点w”这一行,这里是我的非工作代码: 使用我的顶点类,我