数据结构 | 树跟图有什么区别?

270 阅读1分钟

结构上

  1. 树是层级结构,每个子节点只有一个父节点
  2. 图是非线性结构,节点之间的连接关系可以是任意的

约束条件

  1. 树不能有环,树只有一个根节点
  2. 图可以有环,可以有多个联通分量

应用场景

  1. 树常用于表达层级关系,比如文件系统,组织结构,或者算法中的搜索、排序操作
  2. 图用于表达复杂的关系网络,比如社交网络,路由算法等

遍历方式

  1. 树的遍历方式有前中后序遍历和层序遍历
  2. 图则是有DFS 和 BFS

树和图的关系

树是有更多约束的图,是特殊的图