顶点和边之间的差异[图,算法和DS]

时间:2009-08-17 08:21:41

标签: algorithm data-structures graph-theory

我刚刚开始阅读一本定义图形的算法书,如下所示:

  

图表 - 代表关系   在任意对象之间。   图1.8(b)模拟了一个网络   道路作为图形,其中顶点   是城市,边缘是道路   连接城市。图表是   可能是有问题的对象   你寻求一个“网络”,“电路”,   “网络”或“关系”。

图1.8(b)是这样的: alt text

让我感到困惑的是以下几行:

  

......顶点是城市和城市   边缘是连接成对的道路   城市...

3 个答案:

答案 0 :(得分:13)

顶点是点,边是线。因此,城市和道路。

我不确定是什么让你感到困惑,但一般情况下,图表确实用于模拟对象之间的连接。

如果您有一堆可能彼此“连接”的对象(顶点),则Graph将是维护它的高级数据结构。我说的是“高级”,因为在实践中你可能需要支持数据结构来维护内存/数据库/文件中的图形:矩阵,链接列表,多对多表等。

如果“方向”不重要,就像上面的情节一样(即所有道路都是双向的),你就有了一个“无向图”。如果连接方向确实具有重要性(例如,如果城市之间存在单向道路),您将拥有“有向图”,其中每个边实际上都是一个“箭头”,指向某个方向。

如果您对此非常陌生,我建议您阅读相关的Wikipedia entry。对于一些“真实”的学习,我推荐Cormen et al's Introduction to Algorithms这本我研究过的书,在我看来是有史以来最好的计算机科学书之一。

答案 1 :(得分:5)

顶点是图的节点。 边是连接节点对的弧。

答案 2 :(得分:0)

如果你计算你看到的每一条线,那就是vertices.edges是角落[例如 - 一个球体没有角落,没有顶点但是我有面孔。如果你想知道3D形状的所有属性搜索3D形状你的计算机。我会得到更多的解释。