我是靠谱客的博主 尊敬火车,最近开发中收集的这篇文章主要介绍拓扑排序(总结),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 

1、定义:对一个有向无环图G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序的序列,简称拓扑序列

2、条件:

  • 每个顶点出现且只出现一次
  • 若A在序列中排在B的前面,则在图中不存在从B到A的路径

3、特性:

  • 拓扑排序并不唯一
  • 有向无环图一定存在拓扑排序

使用的算法也很简单步骤大概就是:这里使用bfs(已理解)

一:先计算所有节点的入度

二:将所有入度为0的点进入一个队列

三:然后出队,得到一个元素

四:将该元素指向的所有元素的入度减1

五:如果减后其入度为0则将该元素入队列

六:继续出队重复步骤三,直到队列为空
https://blog.csdn.net/zuyuhuo6777/article/details/97966394

dfs遍历:

https://blog.csdn.net/pandora_madara/article/details/26478385

 

链接:https://blog.csdn.net/wenqiwenqi123/article/details/80024312

链接:https://zhuanlan.zhihu.com/p/69858335

链接:https://blog.csdn.net/weixin_42001089/article/details/84327306

最后

以上就是尊敬火车为你收集整理的拓扑排序(总结)的全部内容,希望文章能够帮你解决拓扑排序(总结)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部