摘要: 一、什么是拓扑排序? 在图论中,**拓扑排序(Topological Sorting)是一个有向无环图(DAG, Directed Acyclic Graph)**的所有顶点的线性序列。且该序列必须满足下面两个条件: 每个顶点出现且只出现一次。 若存在一条从顶点 A 到顶点 B 的路径,那么在序列中 阅读全文
posted @ 2021-08-10 21:09 糖豆爸爸 阅读(8078) 评论(3) 推荐(3)
摘要: 一、邻接矩阵 适用: 稠密图,就是说点数的平方与边数接近的情况,换句话说就是边特别多。 不适用: 稀疏图,就是点数的平方与边数差的特别多,边数少,但点数多,就不行了,因为空间占用太大了。 实现代码 #include <bits/stdc++.h> using namespace std; const 阅读全文
posted @ 2021-08-10 16:32 糖豆爸爸 阅读(916) 评论(0) 推荐(0)
摘要: 题目传送门 一、理解与感悟 求DAG的拓扑序列有两种办法,都是可以的,一种是比较常用的BFS入度为0的思路框架求拓扑序列,另一种是DFS+记忆化的思路框架求拓扑序列,本题解都来实现一下。 总结: 1、谁向谁有一条有向边是需要强调的,x->y与 y->x是完全不同的。 本题是说x被y吃掉,记录的是这个 阅读全文
posted @ 2021-08-10 11:49 糖豆爸爸 阅读(154) 评论(0) 推荐(0)
摘要: 题目传送门 一、拓扑排序完整代码(bfs) #include <bits/stdc++.h> using namespace std; const int N = 10010; int n; //必须完成的杂务的数目 int x; //工作序号 int y; //一些必须完成的准备工作 int an 阅读全文
posted @ 2021-08-10 09:07 糖豆爸爸 阅读(282) 评论(0) 推荐(0)
Live2D