黛琳ghz 2023-12-21 20:16 采纳率: 66.7%
浏览 17
已结题

使用 Python 表示图,并查找从一个节点到另一个节点的路径。

问个问题,使用 Python 表示图,并查找从一个节点到另一个节点的路径,怎么做呢?

  • 写回答

2条回答 默认 最新

  • bluetata 云计算领域优质创作者 2023-12-21 20:18
    关注

    参考下下面的代码,
    以下是使用邻接表表示图,并找到从节点1到节点4的路径的例子

    from collections import defaultdict
    
    def find_path(graph, start, end, path=[]):
        path = path + [start]
        if start == end:
            return path
        if start not in graph:
            return None
        for node in graph[start]:
            if node not in path:
                new_path = find_path(graph, node, end, path)
                if new_path:
                    return new_path
        return None
    
    # 示例用法
    my_graph = {
        1: [2, 3],
        2: [4],
        3: [4],
        4: [5],
        5: []
    }
    start_node = 1
    end_node = 4
    path = find_path(my_graph, start_node, end_node)
    print(f"从节点 {start_node} 到节点 {end_node} 的路径为:{path}")
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月29日
  • 已采纳回答 12月21日
  • 创建了问题 12月21日