05 2022 档案

摘要:#定义 在无向图中,所有能互通的点组成了一个“连通分量”。在一个连通分量中有一些关键的点,如果删除它们,会把这个连通分量分成两个或更多,这种点称为割点(Cut vertex)。 类似的有割边(Cut edge,又称为桥,bridge)问题。在一个连通分量中,如果删除一条边,把这个连通两个(注意边最多 阅读全文
posted @ 2022-05-22 22:05 何太狼 阅读(831) 评论(0) 推荐(0)
摘要:#定义 欧拉路径 图中所有的边都经过且只经过一次(一笔画)。 欧拉回路 起点与终点相同的欧拉路径。 #欧拉路径(回路)判定 有向图的欧拉路径 图中恰好存在一个点出度比入度多一(起点),一个点入度比出度多一(终点),其余节点出度=入度(可进可出)。 有向图的欧拉回路 所有点的入度=出度(任意点可作为起 阅读全文
posted @ 2022-05-21 23:48 何太狼 阅读(322) 评论(0) 推荐(0)
摘要:#cin.getline(name,ArSize) name为数组名,ArSize为要读取的字符数,该函数最多读入的字符数为ArSize-1,读到换行符时停止并丢弃换行符。 #cin.get(name,ArSize) 与cin.getline()的区别为cin.get()会将换行符留在输入队列中。 阅读全文
posted @ 2022-05-15 18:44 何太狼 阅读(540) 评论(0) 推荐(0)
摘要:extern与.h文件### extern `extern`是一个关键字。正常情况下,声明一个全局变量会自动定义它,并未它分配内存,但加上`extern`后不会定义,仅仅是声明。 ``` #include using namespace std; extern int a; int main() { cout using 阅读全文
posted @ 2022-05-08 20:39 何太狼 阅读(785) 评论(0) 推荐(0)
摘要:一个图能进行拓扑排序的充要条件是它是一个有向无环图(DAG directed acyclic graph)。 #基于BFS的拓扑排序 先将所有入度为0的点放入队列中(顺序无关紧要),每次将队首弹出的点加入拓扑序列中,然后将该点所有的相邻点入度减1,将入度减为0的点入队。 当队列为空时,若所有点都以加 阅读全文
posted @ 2022-05-03 23:14 何太狼 阅读(50) 评论(0) 推荐(1)
摘要:#差分数组 我们令$a[i]$表示原数组 $dif[i]$表示差分数组 那么我们就有 $$ \left{ \begin{aligned} dif[0]&=a[0]\ dif[i]&=a[i]-a[i-1],i>0 \end{aligned} \right. $$ 那么$a[i]=\sum_{k=0} 阅读全文
posted @ 2022-05-02 19:53 何太狼 阅读(37) 评论(0) 推荐(0)
摘要:最近公共祖先简称LCA(Lowest Common Ancestor)。两个节点的最近公共祖先,就是这两个点所有的公共祖先里面,离根最远的那个。 \(d(u,v)=h(u)+h(v)-2*h(lca(u,v))\) 例题 P3379 【模板】最近公共祖先(LCA) #Tarjan求解最近公共祖先 基 阅读全文
posted @ 2022-05-01 22:07 何太狼 阅读(44) 评论(0) 推荐(0)