拓扑排序怎么排序,如何进行拓扑排序
如果算法数据结构中有非常简单易用的算法,答案是肯定的。这就是我们今天要研究和介绍的主题——拓扑排序。它的主要功能是检查环的存在和依赖调度的问题。我相信你可能还会听到,但是不要担心。让我们揭开拓扑排序的面纱,看看怎么用。
拓扑排序原理:
是关于一个数组的。
通过一张图,我们可以看出他们之间的关系。
注意,图中的1 2 4 3 5是合法的拓扑排序。
代码实现
最后,我们来看看代码。这真的是史诗般的简单:
路径=[[],[2,4],[3,4],[5],[3,5],[]]
indegree=[0for_inrange(6)]
论坛(6):
forvinpaths[u]:
indegree[v]=1
拓扑=集合()
(5):
foruinrange(1,6):
ifunotitopologicalandindent[u]==0:
拓扑. add(u)
forvinpaths[u]:
indegree[v]-=1
打印(拓扑)OK,以上已经介绍了所有内容。代码这么简单是不是很神奇?表面上看起来很难,但实际上,真的很简单。好了,全部内容都介绍完了。如果你还有什么想知道的,请去盛行IT软件开发工作室咨询~
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。