导语:
本文主要介绍了关于python中拓扑排序如何使用?的相关知识,希望可以帮到处于编程学习途中的小伙伴
如果算法数据结构中有一个非常简单易用简单的算法,答案是肯定的,这就是我们今天要学习的主题
——拓扑排序,其主要作用是检查环的存在和依赖调度等问题。相信大家可能还一头雾水,但别着急,下面就让我们一起揭开谜底吧
拓扑排序
的面纱吧,看下怎么去使用它。
拓扑排序
原理:
就是关于一个数组的事情。
通过一张图片,即可看出相互间的关联。
注意图
中
1 2 4 3 5就是一个合法的拓扑排序
。
代码实现
最后,我们来看下代码,真的是史诗级的简单:
paths = [[], [2, 4], [3, 4], [5], [3, 5], []]
indegree = [0 for _ in range(6)]
for u in range(6):
for v in paths[u]:
indegree[v] += 1
topological = set()
for i in range(5):
for u in range(1, 6):
if u not in topological and indegree[u] == 0:
topological.add(u)
for v in paths[u]:
indegree[v] -= 1
print(topological)
好了,上面已经介绍了所有的内容。你对代码如此简单感到惊讶吗?光是看表面,好像很难,但是实际操作起来真的非常简单。好了,所有的内容都介绍完了。如果你还有什么想知道的,就去
查询吧~
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何用python画同心圆08/19
- ♥ 如何实现python3线程安全?12/05
- ♥ 如何调试python2.712/02
- ♥ python如何判断一个值是否在字典中09/04
- ♥ 如何在python中绘制图片11/24
- ♥ python中如何使用if判断一个文件夹是否存在11/25
内容反馈