一句话总结
图结构就是 多叉树结构 的延伸。
在树结构中,只允许父节点指向子节点,不存在子节点指向父节点的情况,子节点之间也不会互相链接;而图中没有那么多限制,节点之间可以相互指向,形成复杂的网络结构。
由于图结构可以对更复杂的问题进行抽象,所以也产生了更复杂的图论算法,比较经典的有 二分图算法、拓扑排序、最短路径算法、最小生成树算法 等,这些都会在后文介绍。
本文主要介绍图的基本概念,以及如何用代码实现图结构。
图的逻辑结构
邻接表和邻接矩阵实现图结构
不同种类的图结构
图结构的通用代码实现
有向加权图(邻接表实现)
有向加权图(邻接矩阵实现)
有向无权图(邻接表/邻接矩阵实现)
无向加权图(邻接表/邻接矩阵实现)
无向无权图(邻接表/邻接矩阵实现)