用python实现获得一个图的邻接表,输出结果为某节点的邻居节点
时间: 2024-02-18 10:04:52 浏览: 74
可以根据上一题的邻接表代码,输出某个节点的邻居节点。例如,输出节点1的邻居节点:
```python
# 定义一个图,用边集表示,例如:{(0,1), (1,2), (2,0)}
edges = [(0, 1), (1, 2), (2, 0)]
n = 3
# 初始化邻接表为空列表
adj = [[] for _ in range(n)]
# 将边集中的边加入邻接表
for i, j in edges:
adj[i].append(j)
adj[j].append(i) # 无向图需要对称
# 输出节点1的邻居节点
print(adj[1])
```
输出结果为:
```
[0, 2]
```
其中,adj[1]=[0,2]表示节点1的邻居为节点0和节点2。
相关问题
用python实现获得一个图的邻接表,输出结果存入字典中
假设我们的图使用邻接表存储,其中每个节点用一个数字表示,邻接表是一个字典,键是每个节点,值是一个列表,存储与该节点相邻的所有节点。下面是一个示例代码:
```python
# 定义一个示例图的邻接表
graph = {0: [1, 2], 1: [2], 2: [0, 3], 3: [3]}
# 输出邻接表
for node, neighbors in graph.items():
print(f"节点 {node} 的邻居是 {neighbors}")
```
输出结果为:
```
节点 0 的邻居是 [1, 2]
节点 1 的邻居是 [2]
节点 2 的邻居是 [0, 3]
节点 3 的邻居是 [3]
```
这里我们定义了一个示例图,包括了四个节点和四条边。我们使用字典来表示邻接表,其中键是每个节点,值是一个列表,存储与该节点相邻的所有节点。最后,我们遍历邻接表,输出每个节点及其邻居节点的信息。
用python实现获得一个图的邻接表
可以使用Python中的字典来实现获得一个图的邻接表。假设图有n个节点,邻接表adj的大小为n,其中adj[i]表示节点i的邻居列表。下面是一个示例代码:
```python
# 定义一个图,用边集表示,例如:{(0,1), (1,2), (2,0)}
edges = [(0, 1), (1, 2), (2, 0)]
n = 3
# 初始化邻接表为空列表
adj = [[] for _ in range(n)]
# 将边集中的边加入邻接表
for i, j in edges:
adj[i].append(j)
adj[j].append(i) # 无向图需要对称
# 输出邻接表
print(adj)
```
输出结果为:
```
[[1, 2], [0, 2], [1, 0]]
```
其中,第i个元素表示节点i的邻居列表,例如,adj[0]=[1,2]表示节点0的邻居为节点1和节点2。
阅读全文