首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
首页 /
DFS
#
DFS
#
1706次浏览
3人互动
收藏话题
分享
此刻你想和大家分享什么
热门
最新
2024-04-09 17:36
门头沟学院 Java
题解 |DFS #迷宫问题# python 带注释
while True: try: m,n=list(map(int , input().split())) maze=[] for _ in range(m): maze.append(list(map(int,input().split()))) def walk(i, j, pos=[(0, 0)]): if j+1 < n and maze[i][j+1] == 0: # 向右 if (i, j+1) not in pos: walk(i, j+1, pos + [(i, j+1)]) if j-1 >= 0 and maze[i][j-1] == 0: # 向左 if (i...
Java基础学习
点赞
评论
收藏
分享
2023-03-30 11:01
已编辑
贵州大学 Python
题解 | #迷宫问题#
思路分析本题迷宫只有一条通道,可以使用DFS,栈内元素正好为所走的路径,也是最短路径。若迷宫不只一条通道,使用DFS走通的路径不一定是最短路径,最好采用BFS。方法一:DFS def DFS(start): stack = [] stack.append(start) maze[0][0] = 2 # 走过标记为2 while stack: if stack[-1] == end: # 栈内元素为所走的路径 for i in stack: print(f"({i[0]},{i[1]})") break r, c = stack[-1] neighbors = [(r - 1, c), (r, ...
点赞
评论
收藏
分享
玩命加载中
创作者周榜
更多
热议话题
更多
1
...
牛客新年AI问运
0
2
...
第一次面试
0
3
...
牛客AI体验站
0
4
...
你喜欢工作还是上学
0
5
...
虾皮求职进展汇总
0
6
...
有必要和同事成为好朋友吗?
0
7
...
投递几十家公司,到现在0offer,大家都一样吗
0
8
...
被AI治愈的瞬间
0
9
...
如果不上班,你会去做什么
0
10
...
招聘要求与实际实习内容不符怎么办
0
牛客网
牛客网在线编程
牛客网题解
牛客企业服务