python使用邻接矩阵构造图代码示例

 更新时间:2017年11月10日 11:06:59   作者:玩蛇的  
这篇文章主要介绍了python使用邻接矩阵构造图代码示例,具有一定参考价值,需要的朋友可以了解下。

问题

如何使用list构造图

邻接矩阵的方式

Python代码示例

# !/usr/bin/env python
# -*-encoding: utf-8-*-
# author:LiYanwei
# version:0.1

# 邻接矩阵
'''

a---b\
|  | \
|  | c
|  | /
e---d/

对于无向图顶点之间存在边,则为1,反之则为0

 a b c d e
a 0 1 0 0 1
b 1 0 1 1 0
c 0 1 0 1 0
d 0 1 1 0 1
e 1 0 0 1 0

观察得知对脚线对称

对于有向图,若a--->b存在,则为ab之间为1,ba为0
对于有权值的存在,可以设置相应的数值

缺陷:
1.对于定点多边少的图,构造的矩阵空间浪费
2.获取某个顶点的邻接顶点,需要遍历相应的列表,找到1的顶点

'''

# 构造顶点 列表解析
N = 5
a, b, c, d, e = xrange(5)
G = [[0] * N for _ in xrange(5)]

# 无向图构造边
def addEdge(G, v1 ,v2):
  G[v1][v2] = G[v2][v1] = 1

addEdge(G, a, b)
addEdge(G, b, c)
addEdge(G, b, d)
addEdge(G, b, e)
addEdge(G, d, e)
addEdge(G, d, c)

print G

结果:

[[0, 1, 0, 0, 0], [1, 0, 1, 1, 1], [0, 1, 0, 1, 0], [0, 1, 1, 0, 1], [0, 1, 0, 1, 0]]

总结

以上就是本文关于python使用邻接矩阵构造图代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:python先序遍历二叉树问题Python3调用微信企业号API发送文本消息代码示例python实现人脸识别代码等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!

相关文章

  • python使用scrapy发送post请求的坑

    python使用scrapy发送post请求的坑

    这篇文章主要介绍了使用scrapy发送post请求的坑,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • 举例详解Python中的split()函数的使用方法

    举例详解Python中的split()函数的使用方法

    这篇文章主要介绍了举例详解Python中的split()函数的使用方法,split()函数的使用是Python学习当中的基础知识,通常用于将字符串切片并转换为列表,需要的朋友可以参考下
    2015-04-04
  • Python matplotlib调整坐标轴位置、标签位置和标签方向以及X轴刻度标签位置

    Python matplotlib调整坐标轴位置、标签位置和标签方向以及X轴刻度标签位置

    我们在用matplotlib绘制图的时候总是有各种需求,下面这篇文章主要给大家介绍了关于Python matplotlib调整坐标轴位置、标签位置和标签方向以及X轴刻度标签位置的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • 使用python编写一个语音朗读闹钟功能的示例代码

    使用python编写一个语音朗读闹钟功能的示例代码

    这篇文章主要介绍了使用python编写一个语音朗读闹钟,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Python工厂模式实现封装Webhook群聊机器人详解

    Python工厂模式实现封装Webhook群聊机器人详解

    企业存在给 特定群组 自动推送消息的需求,你可以在群聊中添加一个自定义机器人,通过服务端调用 webhook 地址,即可将外部系统的通知消息即时推送到群聊中。本文就来和大家聊聊具体实现方法
    2023-02-02
  • python爬虫可以爬什么

    python爬虫可以爬什么

    在本篇文章里小编给大家整理的是关于python爬虫的作用地方以及相关知识点,需要的朋友们可以学习下。
    2020-06-06
  • python的迭代器,生成器和装饰器你了解吗

    python的迭代器,生成器和装饰器你了解吗

    这篇文章主要为大家详细介绍了python的迭代器,生成器和装饰器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • python list的index()和find()的实现

    python list的index()和find()的实现

    这篇文章主要介绍了python list的index()和find()的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Pandas通过index选择并获取行和列

    Pandas通过index选择并获取行和列

    本文主要介绍了Pandas通过index选择并获取行和列,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python爬虫,获取,解析,存储详解

    Python爬虫,获取,解析,存储详解

    这篇文章主要介绍了Python爬虫获取、解析,获数据操作,其中代码描述非常详细,需要的朋友可以参考下,希望能够给你带来帮助
    2021-10-10

最新评论