python - 在节点网络中拆分字典元素
问题描述
我正在构建一个节点网络,程序将在其中获取必须访问的位置列表并输出最短路径。整个网络非常大,迭代整个网络需要很长的时间,所以我正在寻找减少节点数量而不丢失信息的方法。
我当前的问题是简化一行节点。
行中的每个节点都是一个字典条目,键是节点的名称和每个节点的列表,该名称要经过的名称和经过的距离。
前任。'A1': [['A0', 3], ['A2', 3]] 意思是,从节点A1你可以以3的移动成本前往A0,你可以以3的移动成本前往A2 .
输入
row = {'A0': [['A1', 3]],
'A1': [['A0', 3], ['A2', 3]],
'A2': [['A1', 3], ['A3', 3]],
'A3': [['A2', 3], ['A4', 3]],
'A4': [['A3', 3], ['A5', 3]],
'A5': [['A4', 3]]}
visit_list = ['A1', 'A3']
输出
output = {'A0': [['A1', 3]],
'A1': [['A1', 3], ['A3', 6]],
'A3': [['A1', 6], ['A5', 6]],
'A5': [['A3', 6]]}
如您所见,输出包含所有重要信息。A2 已被删除,并且 A1 和 A3 之间的移动成本已增加以解决此问题。
我不知道从哪里开始,任何提示/帮助表示赞赏。
解决方案
推荐阅读
- oracle - 如何将 system01.bdf 从另一个数据库导入我的 oracle
- docker - 在 Windows 10 中将 DFS 挂载到 Docker 容器
- c# - WPF c# .net 框架 4.8 x:Bind
- popper.js - 如何给 popper.js 弹出框边距/填充,使其不会粘在窗口边框上
- matlab - 离散高斯滤波器的标准偏差
- shell - 通过 http 连接通过本地 unix 套接字访问远程 shell
- python - Python Textacy pos_regex_matches 与匹配
- excel - 为什么 userform _change 过程事件不是递归的?
- python - 无法从模板访问图像 url,python django
- continuous-integration - 从 gitlab 模板扩展作业时变量替换(或覆盖)包括