力扣-图论-20【算法学习day.70】

news/2024/12/23 18:31:13 标签: 算法, leetcode, 学习, 图论, java

前言

###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!


习题

1.迷宫中离入口最近的出路

题目链接:1926. 迷宫中离入口最近的出口 - 力扣(LeetCode)

题面:

代码:

java">class Solution {
    int[][] dirs = {{1,0},{-1,0},{0,1},{0,-1}};
    public int nearestExit(char[][] maze, int[] entrance) {
        int n = maze.length;
        int m = maze[0].length;
        Queue<int[]> queue = new LinkedList<>();
        queue.offer(entrance);
        maze[entrance[0]][entrance[1]] = '+';
        int count = 0;
        while(queue.size()!=0){
            count++;
            int size = queue.size();
            for(int i = 0;i<size;i++){
                int[] arr =queue.poll();
                int x = arr[0];
                int y = arr[1];
                for(int[] brr:dirs){
                    int nx = x+brr[0];
                    int ny = y+brr[1];
                    if(nx>=0&&nx<=n-1&&ny>=0&&ny<=m-1&&maze[nx][ny]=='.'){
                        if(nx==0||nx==n-1||ny==0||ny==m-1)return count;
                        queue.offer(new int[]{nx,ny});
                         maze[nx][ny]='+';
                    }
                }
            }
        }
        return -1;
    }
}

后言

上面是力扣图论专题,下一篇是其他的习题,希望有所帮助,一同进步,共勉!


http://www.niftyadmin.cn/n/5796806.html

相关文章

子域提取工具,子域名收集神器,支持多种数据源和枚举选项,域名发现工具,可以为任何目标枚举海量的有效子域名,安全侦察工具,利用证书透明原则监控部署的新子域

子域提取工具&#xff0c;子域名收集神器&#xff0c;支持多种数据源和枚举选项&#xff0c;域名发现工具&#xff0c;可以为任何目标枚举海量的有效子域名&#xff0c;安全侦察工具&#xff0c;利用证书透明原则监控部署的新子域。 需要对目标域名的子域进行深入分析&#xff…

【CVE-2024-56145】PHP 漏洞导致 Craft CMS 出现 RCE

大多数开发人员都同意,与 15 年前相比,PHP 是一种更加理智、更加安全和可靠的语言。PHP5早期的不良设计已让位于更好的开发生态系统,其中包括类、自动加载、更严格的类型、更理智的语法以及一大堆其他改进。安全性也没有被忽视。 register_globals一些老读者可能还记得和的…

部署Mysql、镜像和容器、常见命令

目录 部署Mysql 镜像和容器 常见命令 部署Mysql 可以有多个容器 docker run -d \--name mysql \-p 3306:3306 \-e TZAsia/Shanghai \-e MYSQL_ROOT_PASSWORD123 \mysql docker run -d \--name mysql2 \-p 3307:3307 \-e TZAsia/Shanghai \-e MYSQL_ROOT_PASSWORD123 \mys…

CMake的INSTALL FILES和INSTALL DIRECTORY有什么区别

在 CMake 中&#xff0c;install() 命令用于安装构建的目标文件、头文件、库等到指定的目标路径。install(FILES ...) 和 install(DIRECTORY ...) 都是 install() 命令的具体用法&#xff0c;它们的功能和适用场景不同。 以下是两者的详细区别和用法说明&#xff1a; 1. insta…

力扣150题

88. 合并两个有序数组 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2&#xff0c;另有两个整数 m 和 n &#xff0c;分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中&#xff0c;使合并后的数组同样按 非递减顺序 排列。 **注意&#xff1a;**…

深度学习卷积神经网络CNN之MobileNet模型网络模型详解说明(超详细理论篇)

1.MobileNet背景 2.MobileNet V1论文 3. MobileNett改进史 4. MobileNet模型结构 5. 特点&#xff08;超详细创新、优缺点及新知识点&#xff09; 一、MobileNet背景 随着移动设备的普及&#xff0c;深度学习模型的应用场景逐渐扩展至移动端和嵌入式设备。然而&#xff0c;传统…

AI多模态技术介绍:理解多模态大语言模型的原理

本文目标是解释多模态LLMs的工作原理&#xff0c;虽然多模态的输入可以有音频&#xff0c;文本&#xff0c;图像和视频&#xff0c;但这里主要讨论的还是以图文为主的多模态大语言模型。 参考文章&#xff1a;https://magazine.sebastianraschka.com/p/understanding-multimoda…

详解redis哨兵(高可用)

华子目录 为什么会出现redis的哨兵?redis哨兵哨兵机制能做什么&#xff1f;什么是主观下线和客观下线&#xff1f;主观下线客观下线 哨兵的三个定时监控master主节点下线后&#xff0c;怎么进行故障转移&#xff1f;leader哨兵的选举故障转移&#xff0c;选举新的master执行故…