Day49-图论

图论理论基础 | 代码随想录

深度优先搜索理论基础 | 代码随想录

广度优先搜索理论基础 | 代码随想录

可达路径-98

98. 可达路径

python 复制代码
def dfs(graph,cur,n,path,result):
    if cur == n:
        result.append(path.copy())
        return
    for i in range(n+1):
        if graph[cur][i]:
            path.append(i)
            dfs(graph,i,n,path,result)
            path.pop()

def main():
    n,m = map(int,input().split())
    # 节点编号从1开始,所以下标增加到n+1
    graph = [[0] * (n+1) for _ in range(n+1)]
    for _ in range(m):
        i,o = map(int,input().split())
        graph[i][o] = 1
    result = []  # 二维数组,放全部的结果
    path = [1]  # 放的是单一路径
    dfs(graph,1,n,path,result)
    if not result:
        print("-1")
    else:
        for path in result:
            print(' '.join(map(str,path)))

if __name__ == '__main__':
    main()
相关推荐
qq_334903155 分钟前
使用Flask快速搭建轻量级Web应用
jvm·数据库·python
童话ing6 分钟前
【Golang】Golang Map数据结构底层原理
数据结构·golang·哈希算法
夏乌_Wx6 分钟前
图 | 3道LeetCode常见笔试、面试题汇总
算法
wWYy.8 分钟前
左值引用和右值引用
数据结构
ZPC821013 分钟前
PPO训练小车
人工智能·算法·机器人
E_ICEBLUE16 分钟前
在 Python 中对比 Word 文档:自动生成修订报告
python·word
代码探秘者19 分钟前
【大模型应用】6.RAG 场景下的向量+关键词混合检索
java·开发语言·人工智能·python·spring
bksczm27 分钟前
二分查找的细则(binary search)
算法