使用邻接矩阵构造图
問題
如何使用list構造圖
鄰接矩陣的方式
Python代碼示例
# !/usr/bin/env python
# -*-encoding: utf-8-*-
# author:LiYanwei
# version:0.1# 鄰接矩陣
'''a---b\
| | \
| | c
| | /
e---d/對于無向圖頂點之間存在邊,則為1,反之則為0a 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] = 1addEdge(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
轉載于:https://www.cnblogs.com/Py00/p/7755738.html
總結
- 上一篇: 视频 网站 页面开关灯实现方法
- 下一篇: 团队合作之云医院