关于拓扑排序的几点总结

拓扑排序的概念:

  • 重复一个操作:(遍历入度为0的点,遍历从这个点连接的其他点)

拓扑排序的注意事项:

  • 因为是遍历时是从一个点到其他点,也就是说,需要是有向边,再稍加推理即可得出这样一个结论:拓扑排序必须在DAG上.

拓扑排序的例题(难度由低到高):

拓扑排序的适用范围:

  • 有向无环图(DAG)

关于拓扑排序的总结:

  • 无后效性:拓扑排序的过程类似动态规划的无后效性的体现。这是因为,拓扑排序都是由入度为0的结点开始运行的。而运行过一次的点,不需要再次运行。而在运行的过程中又会产生新的入度为0的结点,这就类似DP的状态转移方程了.
  • 图上算法:拓扑排序是一种图上算法。与之类似的算法有:Dijkstra,Kruskal等,其中,Dijkstra可以作用在无负边权的图上,而Kruskal可以运行在无向无环图上。而拓扑排序只能运行在DAG上.
  • 数论:数论中的拓扑,指:只考虑物体之间的位置关系而不考虑物体的形状和大小。(欧拉回路 例题:七桥问题)
  • 排序:拓扑排序也是一种“排序”算法,也就是说,他可以求出一些具有依赖关系的任务的排序关系。比如:选课问题。
  • 关系:拓扑排序可以用于求一系列对象之间的关系。比如:三角恋问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值