python判断无向图环是否存在的示例

 更新时间:2019年11月22日 15:27:18   作者:努力的小白mm  
今天小编就为大家分享一篇python判断无向图环是否存在的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

暂时是一个手动设置无向图中的边,用一个二维数组表示,后面会改进为用户自己定义无向图的边。

学习python的新手,若大佬有解决的办法,希望不吝赐教

#无向图判断环是否存在
def dfs(u,fa):
  for i in range(v):
    n=g[u][i]#n为图中的顶点数
    # print(u,n,fa,i,'')
    if n in vertex:#判断n是否属于图的顶点
      if n==fa:
        continue
      if visit[n]==0:
        visit[n]=1
        if dfs(n,u)==1:
          return 1
      else:
        return 1
  return 0
global flag,visit,v,g,e,vertex
vertex=[]
flag=0
v=4;e=4#v是顶点,e是边数
#v,e=map(int,input().split())
vertex=[1,2,3,4]#无向图的顶点集合
g=[[0 for i in range(20)]for i in range(20)]
visit=[0 for i in range(20)]
g[1][0]=2;g[2][0]=1;g[2][1]=3;g[3][0]=2;g[3][1]=4;g[4][0]=3;g[1][1]=3;g[3][2]=1
for i in range(1,v+1):
  if visit[i]==0:
    visit[i]=1
    if dfs(i,-1):
      flag=1
      break
if flag==1:
  print('Yes, there is A loop in this network')
else:
  print('No loop')

以上这篇python判断无向图环是否存在的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python 聊聊socket中的listen()参数(数字)到底代表什么

    Python 聊聊socket中的listen()参数(数字)到底代表什么

    本篇文章对Python 聊聊socket中的listen()参数(数字)到底代表什么,进行了很好的讲解,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • Django的性能优化实现解析

    Django的性能优化实现解析

    这篇文章主要介绍了Django的性能优化实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • 对于Python中RawString的理解介绍

    对于Python中RawString的理解介绍

    下面小编就为大家带来一篇对于Python中RawString的理解介绍。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • nx.adjacency_matrix计算邻接矩阵与真实结果不一致的解决

    nx.adjacency_matrix计算邻接矩阵与真实结果不一致的解决

    这篇文章主要介绍了nx.adjacency_matrix计算邻接矩阵与真实结果不一致的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 深入浅析ImageMagick命令执行漏洞

    深入浅析ImageMagick命令执行漏洞

    ImageMagick是一个功能强大的开源图形处理软件,可以用来读、写和处理超过90种的图片文件,包括流行的JPEG、GIF、 PNG、PDF以及PhotoCD等格式。接下来通过本文给大家浅析ImageMagick命令执行漏洞的知识,一起看看吧
    2016-10-10
  • python if not in 多条件判断代码

    python if not in 多条件判断代码

    学了一段时间python,发现有时遇到多条件判断的时候,觉得使用单纯的in的话比较麻烦,需要多个条件,今天又遇到一个,网上搜索了一下,也有同学和我遇到相同的问题,记录一下
    2016-09-09
  • transform python环境快速配置方法

    transform python环境快速配置方法

    经常在数据开发中需要搞udf,最近发现transform更加方便易用,但是经常会涉及到集群python版本不一、包不全或者部分机器上没有安装python。这篇文章主要介绍了transform python环境快速配置方法,需要的朋友可以参考下
    2018-09-09
  • 关于pip安装opencv-python遇到的问题

    关于pip安装opencv-python遇到的问题

    这篇文章主要介绍了关于pip安装opencv-python遇到的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • PyQt5 关于Qt Designer的初步应用和打包过程详解

    PyQt5 关于Qt Designer的初步应用和打包过程详解

    Qt Designer中的操作方式十分灵活,其通过拖拽的方式放置控件可以随时查看控件效果。这篇文章主要介绍了PyQt5 关于Qt Designer的初步应用和打包,需要的朋友可以参考下
    2021-09-09
  • 通过python连接Linux命令行代码实例

    通过python连接Linux命令行代码实例

    这篇文章主要介绍了通过python连接Linux命令行代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02

最新评论