- 博客(2)
- 收藏
- 关注
原创 洛谷P1443 马的遍历Java AC题解
BFS 保证最短路径**:由于 BFS 是逐层扩展的,首次访问某个节点时的步数一定是最小的。- 如果未被访问过(即 `dis[a][b] == -1),则更新步数并加入队列。- dis[i][j] 存储从 (x1, y1) 到 (i, j) 的最少步数。- O(n × m):每个节点最多入队一次,每次处理 8 个方向,总复杂度为线性。- 方向数组**:使用 `dx` 和 `dy` 数组表示马的 8 种移动方式。- 若 dis[i][j] == -1,表示该点不可达。- 使用队列存储待访问的节点。
2025-03-25 18:21:20
365
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人