--- title: Graphs localeTitle: 图表 --- ## 图表 图表是可用于解决路由问题的数据结构,例如“这两个组件是否已连接?”和“从a点到b点的最短路径是什么?” 图由节点和边组成。 节点(即顶点)是图形中的对象。 节点可以包含诸如节点名称和附加到哪些边缘之类的信息。 边是连接两个节点的链接。 边缘可以包含诸如边缘的重量之类的信息。 如果两个节点通过边连接,则它们是邻居(即相邻)。 根据问题,您可以使用双向(无向)或单向(定向)边。 如果你有一个从a到b的无向边,那么从b到a也有一种方法。 如果从a到b有一个有向边,则b和a之间不一定有边。 您可以使用图表来制定以下情况: * 地理地图 * 您所在国家/地区的每个城市都是节点 * 如果两个城市通过公路连接,则它们之间存在边缘 \*道路可以是单向或双向(有向和无向边) \*重量可以是道路的长度 * 水流 * 每个闸门都是一个节点 * 每条运河都是边缘 * 水只会沿一个方向流动,因此边缘是直的 * 重量可以是流量的最大水容量 示例:一个图表,其中包含北欧国家首都的节点,以及(无向)边缘到通过直接道路连接的城市的行车距离。 ``` . +---------+ . |Reykjavik| . +---------+ . . . 529 km +---------+ 1760 km +--------+ . +------------+|Stockholm|+---------+|Helsinki| . | +---------+ +--------+ . + + . +----+ 1991 km | . |Oslo|+-------------------------------------+ . +----+ . +----------+ . |Copenhagen| . +----------+ ``` #### 更多信息: [广度优先搜索(BFS)](https://github.com/freecodecamp/guides/tree/master/src/pages/algorithms/graph-algorithms/breadth-first-search/index.md) [深度优先搜索(DFS)](https://github.com/freecodecamp/guides/tree/master/src/pages/algorithms/graph-algorithms/depth-first-search/index.md)