力扣1091. 二进制矩阵中的最短路径

server/2025/2/26 15:03:17/

力扣1091. 二进制矩阵中的最短路径

题目

在这里插入图片描述

题目解析及思路

题目要求找到一条左上到右下的最短路径

八方向bfs板子

代码

class Solution {int dx[8] = {0,1,0,-1,1,1,-1,-1},dy[8] = {1,0,-1,0,-1,1,-1,1};
public:int shortestPathBinaryMatrix(vector<vector<int>>& grid) {int n = grid.size();if(grid[0][0] == 1) return -1;queue<pair<int,int>> q;vector<vector<int>> dis(n,vector<int>(n,INT_MAX));auto bfs = [&]()->void{while(!q.empty()){auto [x,y] = q.front();q.pop();for(int i=0;i<8;i++){int sx = x + dx[i];int sy = y + dy[i];if(sx < 0 || sx >= n || sy < 0 || sy >= n || grid[sx][sy] == 1){continue;}if(dis[sx][sy] > dis[x][y] + 1){dis[sx][sy] = dis[x][y] + 1;q.emplace(sx,sy);}}}};q.emplace(0,0);dis[0][0] = 1;bfs();return dis[n-1][n-1] > INT_MAX / 2 ? -1 : dis[n-1][n-1];}
};

http://www.ppmy.cn/server/170771.html

相关文章

linux用户操作与权限

Linux的root用户 root用户&#xff08;超级管理员&#xff09; root用户拥有最大的系统操作权限。 普通用户的权限一般在其home目录内是不受限的&#xff0c;但是出来自己的home目录&#xff0c;仅有只读和执行权限。 su su命令切换到root账号 语法&#xff1a;su [-] [用户…

DeepSeek系统架构的逐层分类拆解分析,从底层基础设施到用户端分发全链路

一、底层基础设施层 1. 硬件服务器集群 算力单元&#xff1a; GPU集群&#xff1a;基于NVIDIA H800/H100 GPU构建&#xff0c;单集群规模超10,000卡&#xff0c;采用NVLink全互联架构实现低延迟通信。国产化支持&#xff1a;适配海光DCU、寒武纪MLU等国产芯片&#xff0c;通过…

python与C系列语言的差异总结(3)

与其他大部分编程语言不一样&#xff0c;Python使用空白符&#xff08;whitespace&#xff09;和缩进来标识代码块。也就是说&#xff0c;循环体、else条件从句之类的构成&#xff0c;都是由空白符加上冒号(:)来确定的。大部分编程语言都是使用某种大括号来标识代码块的。下面的…

2025蓝桥杯JAVA编程题练习Day5

1.最少步数【省模拟赛】 问题描述 小蓝要上一个楼梯&#xff0c;楼梯共有 n 级台阶&#xff08;即小蓝总共要走 nn级&#xff09;。小蓝每一步可以走 1 级、2 级或 3 级台阶。 请问小蓝至少要多少步才能上到楼梯顶端&#xff1f; 输入格式 输入一行包含一个整数 n。 输出…

Android ViewStub延迟初始化加载布局View,Kotlin

Android ViewStub延迟初始化加载布局View&#xff0c;Kotlin activity_my.xml: <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_…

【Python项目】基于Python的Web漏洞挖掘系统

【Python项目】基于Python的Web漏洞挖掘系统 技术简介&#xff1a; 采用Python技术、MySQL数据库、Django框架、Scrapy爬虫等技术实现。 系统简介&#xff1a; Web漏洞挖掘系统是一个基于B/S架构的漏洞扫描平台&#xff0c;旨在通过自动化的方式对网站进行漏洞检测。系统主要功…

基于python+django的家教预约网站-家教信息管理系统源代码+运行步骤

该系统是基于pythondjango开发的家教预约网站。是给师妹做的课程作业。大家在学习过程中&#xff0c;遇到问题可以在github给作者留言。加油 效果演示 前台地址&#xff1a; http://jiajiao.gitapp.cn 后台地址&#xff1a; http://jiajiao.gitapp.cn/admin 后台管理帐号&am…

跟着李沐老师学习深度学习(十六)

继续学习深度学习&#xff08;十六&#xff09; 继续理解transformer 对于transformer的理解感觉还是云里雾里的&#xff0c;今天又找了一些视频进行一个梳理。 一个浅解 在B站学习发现评论区真的很不错&#xff0c;在沐神讲transformer论文的评论下&#xff0c;有一个评论…