python中拓扑排序的使用方法-成都快上网建站

python中拓扑排序的使用方法

这篇文章主要介绍了python中拓扑排序的使用方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

武威网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站设计等网站项目制作,到程序开发,运营维护。创新互联公司2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联

创新互联建站专业为企业提供惠州网站建设、惠州做网站、惠州网站设计、惠州网站制作等企业网站建设、网页设计与制作、惠州企业网站模板建站服务,十载惠州做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

拓扑排序原理:

就是关于一个数组的事情。

通过一张图片,即可看出相互间的关联。

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中拓扑排序的使用方法内容对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,遇到问题就找创新互联,详细的解决方法等着你来学习!


当前标题:python中拓扑排序的使用方法
文章转载:http://kswjz.com/article/iijpdd.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流