11问答网
所有问题
求一个可以输出所有拓扑排序的代码或者思路,记住是所有可能的拓扑排序????????????????
如题所述
举报该问题
推荐答案 2013-10-13
伪代码:
// 参数g为图,nodes为已经排序的顶点
TopologicalSort(Graph g, List nodes) {
g中所有没有前驱的顶点放入队列q;
while(q不为空) {
q中顶点出队,设为v;
复制nodes生成nodes的副本,并把v加入nodes的副本;
复制g生成g的副本,g的副本删去v和v发出的有向边;
if (g的副本中没有顶点) {
输出nodes; // node为最终的排序
} else {
TopologicalSort(g的副本, nodes的副本);//递归对剩下的图排序
}
}
}
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://11.wendadaohang.com/zd/2MS2PP7M8.html
其他回答
第1个回答 2013-09-18
你可以对每个点标记它是第几层,初始的为第一层,这样按层输出,对于每一层他的方案是排列数。不知道对不对
追问
不用想就知道错哦
追答
确实有bug,可不可以先找几个连通块(这些连通块排列),然后把优先级最低的去掉(最后才能处理的点,他们可以排列),又成了同样的问题,可以否?
相似回答
拓扑排序
在计算机语言中的应用
答:
在Pascal语言的实现中,如以下
代码
所示:程序TopSort中,首先定义了地图(map)和链接(link)数组,以及v和pnt数组。通过读取输入的顶点数量n和边的数量m,构建了有向图的邻接关系。接着,算法遍历图,找出入度为0的顶点,将其标记并减少其邻接顶点的入度。当所有顶点都被处理过,就得到了
一个拓扑
序列
,
...
大家正在搜
拓扑排序的所有路径
拓扑排序关键路径c语言代码
以下代码的输出结果是
拓扑排序算法代码
拓扑排序伪代码
拓扑排序序列怎么求
拓扑排序所有结果
以下代码段执行后的输出结果为
数据结构拓扑排序和关键路径
相关问题
拓扑排序的流程图
求一个算法!!!!
求一个C语言实现拓扑排序的代码
C++假设给我们一个任意的图,它可能是也可能不是DAG(有向...
拓扑排序是怎么进行的?
一个有向无环图的拓扑排序序列是唯一的么
怎样通过拓扑排序判断图是否有环
对n个元素进行拓扑排序,如果有多种排序方法,输...