基环树的相关概念
基环树: 给定一棵无向树,包含 $n$ 个点 $n-1$ 条边,在树中任意两个点之间加一条边,此时树中有且仅有一个环,此时整棵树的形状应该是以环为中心,环上每个点都可能向环外延伸出一棵子树,这就是一棵基环树。对于每棵基环树,恰好有 $n$ 个点 $n$ 条边。
可以发现,仙人掌是有多个简单环,而基环树只有一个简单环,因此基环树其实是一个特殊的仙人掌。
如果给基环树中每条边一个方向,环上边的方向都要一致,如果以环上每个点为根的子树上的边都是指向环外,则称为外向树。如果以环上每个点为根的子树上的边都是指向环内,则称为内向树。
若干棵基环树构成的图,被称为基环(树)森林。若干棵外向树构成的图,被称为外向树森林。若干棵内向树构成的图,被称为内向树森林。
对于一张图,如果图中每个点恰好有 $1$ 条入边或恰好有 $1$ 条出边,那么这张图一定是一个基环森林。
基环树的应用:
基环树问题的常见题型就是求树上的某些信息。
在求树上的信息的时候一般有两种常见的做法,一种是对于环上节点用单调队列求最值,从而快速得到某些信息。一种是将环上某一条边删去,将基环树问题转化成普通的树上问题,用树形 $dp$ 来求。