首页 > 解决方案 > 在节点网络中拆分字典元素

问题描述

我正在构建一个节点网络,程序将在其中获取必须访问的位置列表并输出最短路径。整个网络非常大,迭代整个网络需要很长的时间,所以我正在寻找减少节点数量而不丢失信息的方法。

我当前的问题是简化一行节点。

行中的每个节点都是一个字典条目,键是节点的名称和每个节点的列表,该名称要经过的名称和经过的距离。

前任。'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 之间的移动成本已增加以解决此问题。

我不知道从哪里开始,任何提示/帮助表示赞赏。

标签: python

解决方案


推荐阅读