LeetCode 5208. 穿过迷宫的最少移动次数

5208. 穿过迷宫的最少移动次数

可以访问我的博客,嘎嘎

题目描述


思想

想法很简单,就是用BFS一层一层的搜索就可以。但针对这个问题,有些地方需要改变下。

首先是当前位置

以前在一个二维地图上进行BFS,当前位置都是用 ( i , j ) (i,j) (i,j)这样一个坐标表示的,但现在这条小蛇独占了2个格子,也就是需要用两个坐标来表示,即 ( i 1 , j 1 ) , ( i 2 , j 2 ) (i_1,j_1),(i_2,j_2) (i1,j1),(i2,j2),约定第一个坐标表示蛇的尾部,第二个坐标表示蛇的头部。为了方便实现,我们定义一个结构体:

struct Node {
   
    int a, b, c, d;
    Node() {
   }
    Node(int _a, int _b, int _c, int _d) : a(_a), b(_b), c(_c), d(_d) {
   }
};

其中(a,b)对应着 ( i 1 , j 1 ) (i_1,j_1) (i

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值