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


Posted in Python onNovember 10, 2017

问题

如何使用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 相关文章推荐
Python实现动态添加类的属性或成员函数的解决方法
Jul 16 Python
Python实现的监测服务器硬盘使用率脚本分享
Nov 07 Python
用Python给文本创立向量空间模型的教程
Apr 23 Python
python简单实现基数排序算法
May 16 Python
python设计模式大全
Jun 27 Python
使用Python对微信好友进行数据分析
Jun 27 Python
Flask框架配置与调试操作示例
Jul 23 Python
python实现随机梯度下降法
Mar 24 Python
Python3按一定数据位数格式处理bin文件的方法
Jan 24 Python
将matplotlib绘图嵌入pyqt的方法示例
Jan 08 Python
谈一谈数组拼接tf.concat()和np.concatenate()的区别
Feb 07 Python
Matplotlib.pyplot 三维绘图的实现示例
Jul 28 Python
python先序遍历二叉树问题
Nov 10 #Python
简单了解OpenCV是个什么东西
Nov 10 #Python
python的文件操作方法汇总
Nov 10 #Python
python使用正则表达式的search()函数实现指定位置搜索功能
Nov 10 #Python
Python3调用微信企业号API发送文本消息代码示例
Nov 10 #Python
Python实现图片滑动式验证识别方法
Nov 09 #Python
浅谈python中的占位符
Nov 09 #Python
You might like
php准确计算复活节日期的方法
2015/04/18 PHP
ThinkPHP框架搭建及常见问题(XAMPP安装失败、Apache/MySQL启动失败)
2016/04/15 PHP
PHP以json或xml格式返回请求数据的方法
2018/05/31 PHP
PHP基于GD2函数库实现验证码功能示例
2019/01/27 PHP
非常不错的功能强大代码简单的管理菜单美化版
2008/07/09 Javascript
jQuery DIV弹出效果实现代码
2009/07/03 Javascript
基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解
2013/05/07 Javascript
怎么通过onclick事件获取js函数返回值(代码少)
2015/07/28 Javascript
jquery移动端TAB触屏切换实现效果
2020/12/22 Javascript
jquery获取所有选中的checkbox实现代码
2016/05/26 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
mui上拉加载更多下拉刷新数据的封装过程
2017/11/03 Javascript
jquery引入外部CDN 加载失败则引入本地jq库
2018/05/23 jQuery
php中and 和 &&出坑指南
2018/07/13 Javascript
通过jquery的ajax请求本地的json文件方法
2018/08/08 jQuery
原生js实现移动端Touch轮播图的方法步骤
2019/01/03 Javascript
微信小程序实现购物页面左右联动
2019/02/15 Javascript
vue+webpack dev本地调试全局样式引用失效的解决方案
2019/11/12 Javascript
微信小程序登录时如何获取input框中的内容
2019/12/04 Javascript
小程序自动化测试的示例代码
2020/08/11 Javascript
解决vue中axios设置超时(超过5分钟)没反应的问题
2020/09/04 Javascript
[01:14:30]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第二场 8.20.mp4
2019/08/22 DOTA
python方向键控制上下左右代码
2018/01/20 Python
python安装教程
2018/02/28 Python
python使用tensorflow深度学习识别验证码
2018/04/03 Python
Django如何自定义model创建数据库索引的顺序
2019/06/20 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
python 爬取小说并下载的示例
2020/12/07 Python
python使用scapy模块实现ping扫描的过程详解
2021/01/21 Python
python 批量将中文名转换为拼音
2021/02/07 Python
应用心理学个人求职信范文
2013/12/11 职场文书
大学生创业计划书的范文
2014/01/07 职场文书
司机检讨书
2014/02/13 职场文书
社区网格化管理实施方案
2014/03/21 职场文书
导游欢送词
2015/01/31 职场文书
JavaScript 对象创建的3种方法
2021/11/17 Javascript