Menu
CoddyTech

什么是图?

Coddy 图:数据结构系列 #9 课程的第 2 课,共 14 课。

图是一种数据结构,用于表示一组事物及其之间的连接。这些事物称为顶点(或节点),连接称为边。

图无处不在。社交网络就是图(人是顶点,友谊是边)。道路地图也是图(交叉路口是顶点,街道是边)。互联网、依赖树和游戏地图都是图。

在这门课程中,我们重点学习无向图:如果一条边连接了 u 和 v,那么 v 也与 u 相连。边没有方向。为了简单起见,我们将使用整数作为顶点的键。

在内部,我们会用邻接表来存储图:将每个顶点映射到它的邻居列表。这样,只需访问一次映射就能查找某个顶点的邻居,而大多数图算法都需要这样的操作。

 

我们将在 Graph 类中实现以下操作:

  1. addVertex:添加一个尚无边的新顶点。
  2. addEdge:连接两个顶点。
  3. hasEdge:检查两个顶点是否相连。
  4. getNeighbors:获取某个顶点的邻居列表。
  5. removeEdge:断开两个顶点之间的连接。
  6. size:统计图中的顶点数量。

 

让我们来构建一个 Graph 类吧!

亲手试试

这节课没有代码挑战。

图:数据结构系列 #9中的所有课

自己练习: C 在线编译器