【单选】一张有向图缩点后得到的有向无环图含 6 个顶点,其中入度为 0 的顶点有 3 个、出度为 0 的顶点有 4 个。为使原图变成强连通图,至少需要添加多少条有向边( )。
缩点后是 DAG,要把整张图变成强连通,最少添加的边数 = max(入度为 0 的数目, 出度为 0 的数目),本题即 max(3, 4) = 4(前提是 SCC 个数 ≥ 2)。
误用"入度 0 数 + 出度 0 数"(得 7,错选 A);或者把已经强连通的特殊情况套上公式(若整图本身是一个 SCC,答案是 0,公式会给出 1,必须特判)。
本题考查有向图强连通化(缩点成 DAG 后的最小加边数)。
把原图的每个强连通分量缩成一个点后,得到一张有向无环图(DAG)。要让原图变成强连通图,等价于让这张 DAG 强连通,而所需要添加的最少边数只跟 DAG 的"源点/汇点"数量有关:
设入度为 0 的顶点数为 A,出度为 0 的顶点数为 B,则最少添加边数 = max(A, B)(SCC 个数 ≥ 2 时)
最少添加边数 = max(3, 4) = 4,选 C。
当整张图只有一个强连通分量时,答案应为 0(已经强连通,不用加边)。此时 A = B = 1,公式 max(A,B) = 1 会给出错误答案——所以做题时先看"缩点后顶点数",若为 1 则直接答 0。