OSDN Git Service

Update virtual-tree.md
authortth37 <48872409+tth37@users.noreply.github.com>
Tue, 27 Aug 2019 15:13:05 +0000 (23:13 +0800)
committerGitHub <noreply@github.com>
Tue, 27 Aug 2019 15:13:05 +0000 (23:13 +0800)
改正错别字 临接表->邻接表

docs/graph/virtual-tree.md

index 27f5fff..d44808e 100644 (file)
@@ -201,14 +201,14 @@ author: HeRaNO, Ir1d, konnyakuxzy, ksyx, Xeonacid, konnyakuxzy, greyqz
 -   此时栈中还有 3 个节点: $1, 3,7$ ,很明显它们是一条链上的,所以直接链接: $1->3$ 和 $3->7$ 的边。
 -   虚树就建完啦!
 
-其中有很多细节,比如我是用临接表存图的方式存虚树的,所以需要清空临接表。但是直接清空整个临接表是很慢的,所以我们在 **有一个从未入栈的元素入栈的时候清空该元素对应的临接表** 即可。
+其中有很多细节,比如我是用邻接表存图的方式存虚树的,所以需要清空邻接表。但是直接清空整个邻接表是很慢的,所以我们在 **有一个从未入栈的元素入栈的时候清空该元素对应的邻接表** 即可。
 
 建立虚树的 C++ 代码大概长这样:
 
 ```cpp
 sort(h + 1, h + 1 + k, cmp);
 sta[top = 1] = 1, g.sz = 0, g.head[1] = -1;
-// 1号节点入栈,清空1号节点对应的临接表,设置临接表边数为1
+// 1号节点入栈,清空1号节点对应的邻接表,设置邻接表边数为1
 for (int i = 1, l; i <= k; i += 1)
   if (h[i] != 1)  //如果1号节点是关键节点就不要重复添加
   {
@@ -222,13 +222,13 @@ for (int i = 1, l; i <= k; i += 1)
       if (id[l] > id[sta[top - 1]])
         //如果LCA不等于次大节点(这里的大于其实和不等于没有区别)
         g.head[l] = -1, g.push(l, sta[top]), sta[top] = l;
-      //说明LCA是第一次入栈,清空其接表,连边后弹出栈顶元素,并将LCA入栈
+      //说明LCA是第一次入栈,清空其接表,连边后弹出栈顶元素,并将LCA入栈
       else
         g.push(l, sta[top--]);
       //说明LCA就是次大节点,直接弹出栈顶元素
     }
     g.head[h[i]] = -1, sta[++top] = h[i];
-    //当前节点必然是第一次入栈,清空接表并入栈
+    //当前节点必然是第一次入栈,清空接表并入栈
   }
 for (int i = 1; i < top; i += 1)
   g.push(sta[i], sta[i + 1]);  //剩余的最后一条链连接一下