树
  图论
  共18个含义
  【看书领红包】关注公..众号【书友大本营】,看书抽最高888现金红包!
  树(英语:tree)是一种抽象数据类型(adT)或是实现这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n>o)个有限节点组成一个具有层次关系的集合。它是一种无向图(undirected graph),其中任意两个顶点间存在唯一一条路径。树图广泛应用于计算机科学的数据结构中,比如二叉查找树、堆、Trie树以及数据压缩中的霍夫曼树等。
  顶点
  v
  边
  v - 1
  色数
  2
  定义
  如果一个无向简单图g 满足以下相互等价的条件之一,那么g 是一棵树:
  g 是没有回路的连通图。
  g 没有回路,但是在g内添加任意一条边,就会形成一个回路。
  g 是连通的,但是如果去掉任意一条边,就不再连通。
  g 是连通的,并且3顶点的完全图?不是g的子图。
  g内的任意两个顶点能被唯一路径所连通。
  如果无向简单图g有有限个顶点(设为n个顶点),那么g 是一棵树还等价于:
  g是连通的,有n ? 1条边,并且g没有简单回路。
  如果一个无向简单图g中没有简单回路,那么g是森林。
  性质
  一棵树中每两个点之间都有且只有一条路径(指没有重复边的路径)。一颗有n个点的树有n-1条边,也就是连接n个点所需要的最少边数。所以如果去掉树中的一条边,树就会不连通。
  如果在一棵树中加入任意的一条边,就会得到有且只有一个环的图。这是因为这条边连接的两个点(或是一个点)中有且只有一条路径,这条路径和新加的边连在一起就是一个环。如果把一个连通图中的多余边全部删除,所构成的树叫做这个图的生成树。
  如果要在树中加入一个点,就要加入一条这个点和原有的点相连的边。这条边不会给这棵树增加一个环或者多余的路径。所以每次这样加入一个点,就可以构成一棵树。
  一棵树既可以是有向的也可以是无向的。显然,树是连通图,但不会是双连通图(对于无向图)或者强连通图(对于有向图)。树可以算是稀疏图。
  显然树中也没有自环和重复边。
  有根树
  在一棵树中可以指定一个特殊的节点:根。一个有根的树叫做有根树。
  有根树中的节点可以根据到根的距离分层。一颗有根树的层数叫做这棵树的高度。节点最多的那一层的节点数叫做这棵树的宽度。对于有根树,每条边都有一个特殊的方向:指向根节点的方向,或者说上一层的方向(或者相反的,指向叶节点的方向,
-->>(第1/2页)(本章未完,请点击下一页继续阅读)