- 5
- 0
- 约5.34千字
- 约 17页
- 2026-02-11 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年百度智能驾驶工程师面试题集
一、编程与算法(5题,每题10分,共50分)
1.(10分)
题目:
给定一个二维地图,其中0表示障碍物,1表示可通行区域。地图的行数为m,列数为n。现需计算从左上角(0,0)到右下角(m-1,n-1)的最短路径长度(只能向下或向右移动)。请实现动态规划算法求解,并给出时间复杂度和空间复杂度分析。
答案:
python
defmin_path_length(grid):
ifnotgridornotgrid[0]:
return-1
m,n=len(grid),len(grid[0])
dp=[[float(inf)]nfor_inrange(m)]
初始化起点
dp[0][0]=0ifgrid[0][0]==1else-1
初始化第一行
forjinrange(1,n):
ifgrid[0][j]==1:
dp[0][j]=dp[0][j-1]+1
else:
dp[0][j]=-1
初始化第一列
foriinrange(1,m):
ifgrid[i][0]==1:
dp[i][0]=dp[i-1][0]+1
else:
dp[i][0]=-1
填充dp表
foriinrange(1
原创力文档

文档评论(0)