一 定义
拓扑排序是对有向无环图(Directed Acyclic Graph简称DAG)顶点的一种排序,
它使得如果存在一条从顶点A到顶点B的路径,那么在排序中B出现在A的后面。
二 先决条件
能够进行拓扑排序图有两个先决条件:有向、无环,即有向无环图。
三 偏序全序
连通图:任意两点之间都存在至少一条边
偏序:非连通图(有向无环图满足偏序关系)
全序:单连通图
...
分类:
编程语言 时间:
2014-12-08 21:21:59
阅读次数:
279
拓扑排序介绍拓扑排序(Topological Order)是指,将一个有向无环图(Directed Acyclic Graph简称DAG)进行排序进而得到一个有序的线性序列。这样说,可能理解起来比较抽象。下面通过简单的例子进行说明!例如,一个项目包括A、B、C、D四个子部分来完成,并且A依赖于B和D...
分类:
编程语言 时间:
2014-12-05 14:11:07
阅读次数:
295
图论之强连通复习开始- -题目大意:给你一个有向图,要你求出这样的点集:从这个点出发能到达的点,一定能回到这个点思路:强连通分量里的显然都可以互相到达 那就一起考虑,缩点后如果一个点有出边,一定不在点集内,因为缩点后是DAG,无环,因此一定不能回到原来的点,所以找到出度为0的点即可#include#...
分类:
其他好文 时间:
2014-12-03 00:19:06
阅读次数:
200
原题链接:https://oj.leetcode.com/problems/intersection-of-two-linked-lists/
题目大意:给定两个单链表,若相交则找出第一个交点。
解题思路:如果两个无环单链表相交,则必定尾部结点为同一个结点。设定两个指针,若从两个链表的表头同时遍历,很明显不能找到交点。但若将较长的链表截去长出来的一部分,然后两个指针同时遍历,则第一次两个指针相...
分类:
其他好文 时间:
2014-12-01 22:36:59
阅读次数:
199
http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2498&cid=1304题目描述 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图。 AOE(Activity On Edge)网:顾名思义,用边表示活动的网...
分类:
其他好文 时间:
2014-11-30 13:51:58
阅读次数:
254
题意:有n(n
解法:其中每种立方体有三种摆放方式,可以将每种转化成三种立方体,因为一个立方体不可能在一个相同的自己上面,所有每种一个就够了。90个点,并且是有向无环的图,求最长路径,可以拓扑排序,也可以dfs。
代码:/******************************************************
* @author:xiefubao
*****...
分类:
其他好文 时间:
2014-11-28 16:19:39
阅读次数:
207
AOE网上的关键路径
Time Limit: 1000MS Memory limit: 65536K
题目描述
一个无环的有向图称为无环图(Directed
Acyclic Graph),简称DAG图。
AOE(Activity
On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG。与AOV不同,活动都表示在了边上,...
分类:
其他好文 时间:
2014-11-27 23:46:28
阅读次数:
554
链接:点击打开链接
题目好长, 而且还有图片,所以就不复制粘贴过来了,这道题的大意是:
一棵树T(连通无环子图)将用n-1条边连接原图的所有的n个顶点,生成的生成树的最大权值边与最小权值边的差(称“苗条值”)尽量小,找出这个最小的苗条值;
思路:
用kruskal枚举;
首先对每条边的权值从小到大进行排序;
枚举每条边为最小边生成最小生成树,并计算这样的生成树的苗条值,枚举玩所...
分类:
其他好文 时间:
2014-11-27 20:32:28
阅读次数:
156
拓扑排序定义
对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序列。简单的说,由某个集合上的一个偏序得到该集合上的一个全序,这个操作称之为拓扑排序。...
分类:
编程语言 时间:
2014-11-26 19:07:37
阅读次数:
184
题目链接:
huangjing
题意:告诉一个无向无环图,然后求在联通的路上的lis。
思路:枚举起点求lis 复杂度是n^2logn,貌似这复杂度对时间有点玄,估计是数据有点弱。。。
首先枚举起点,然后求lis,主要是用dfs求的,要用到回溯的思想,我觉得是只要更新了,就要保存那个操作,然后一旦这一次的搜索完成,那么就要立即回复g数组的值,因为有很多不同的路线,所以一条路走完...
分类:
其他好文 时间:
2014-11-25 23:42:48
阅读次数:
203