代码随想录算法训练营第五十天|卡玛网98. 所有可达路径
1 卡玛网98. 所有可达路径
题目链接:98. 所有可达路径
文章链接:代码随想录
思路:不说思路,看视频我都没有完全理解的题目呀
1.1 文章讲解
def dfs(graph,x,n,result,path):
if x==n:
result.append(path.copy())
return
for i in range(1,n+1):
if graph[x][i] ==1:
path.append(i)
dfs(graph,i,n,result,path)
path.pop()
def main():
n,m = map(int,input().split())
graph = [[0]*(n+1) for _ in range(n+1)]
for _ in range(m):
s,t = map(int,input().split())
graph[s][t] = 1
result=[]
path = []
path.append(1)
dfs(graph,1,n,result,path)
if not result:
print(-1)
else:
for path in result:
print(' '.join(map(str,path)))
if __name__ == '__main__':
main()
1.2 本题小结
- 主要就是理解这里面的数值的一个对应关系,然后就是去尝试一遍,其实调试完以后就明白了
- 主要就是调试吧,还挺有意思的
2 今日小结
- 这一块就是主要了解了很多概念吧,但是做的话,自己尝试debug一次以后,我就明白了这些
- 做了以后发现还是有点意思的,这一块的内容

浙公网安备 33010602011771号