Golang | Leetcode Golang题解之第542题01矩阵

embedded/2024/11/13 10:00:40/

题目:

题解

type point struct{x, y int
}var dirs = []point{{-1, 0}, {1, 0}, {0, -1}, {0, 1}}func updateMatrix(mat [][]int) [][]int {var m, n = len(mat), len(mat[0])var res = make([][]int, m)var visited = make([][]bool, m)var queue []pointfor i := range mat{res[i] = make([]int, n)visited[i] = make([]bool, n)for j := range mat[i]{if mat[i][j] == 0 {queue = append(queue, point{i, j})visited[i][j] = true}}}for len(queue) != 0 {cur := queue[0]queue = queue[1:]for _, dir := range dirs{i, j := cur.x + dir.x, cur.y + dir.yif i >=0 && i < m && j >=0 && j < n && !visited[i][j]{res[i][j] = res[cur.x][cur.y] + 1queue = append(queue, point{i,j})visited[i][j] = true}}}return res
}

http://www.ppmy.cn/embedded/136934.html

相关文章

Vivado+Vscode联合打造verilog环境

一、Vivado下载安装 详细参考我另一篇文章&#xff1a; Vivado2022.2下载安装_fpga vivado下载-CSDN博客https://blog.csdn.net/weixin_61081689/article/details/143460790?spm1001.2014.3001.5501 二、Vscode下载安装 详细参考我另一篇文章&#xff1a; VscodeAnacond…

Spring Boot基础教学:Spring Boot 简介

第一部分&#xff1a;Spring Boot 简介 1.1 什么是Spring Boot&#xff1f; Spring框架的简介Spring Boot与Spring框架的关系Spring Boot的优势 1.2 Spring Boot的核心特性 自动配置起步依赖内嵌服务器Spring Boot CLIActuator 1.3 Spring Boot的应用场景 微服务REST API…

(C++11)委托构造函数--C++

文章目录 委托构造函数为什么要有委托构造函数代码解释注意事项 委托构造函数 C11 引入了委托构造的概念&#xff0c;这使得构造函数可以在同一个类中一个构造函数调用另一个构造函 数&#xff0c;从而达到简化代码的目的。 就是委托其他构造函数帮忙构造。 为什么要有委托构…

nacos集群AP架构源码解析

1 心跳检测 核心类&#xff1a;ClientBeatCheckTask 核心方法&#xff1a;run public void run() {try {//1 集群状态下心跳处理if (!getDistroMapper().responsible(service.getName())) {return;}if (!getSwitchDomain().isHealthCheckEnabled()) {return;}List<Instance…

C++ 中的智能指针(Smart Pointer)

C 中的智能指针&#xff08;Smart Pointer&#xff09;是用于管理动态内存分配的工具&#xff0c;它们能够自动管理资源的生命周期&#xff0c;避免内存泄漏。智能指针是 C11 标准引入的&#xff0c;通过模板类封装原生指针&#xff0c;实现资源的自动释放。主要的智能指针包括…

97_api_intro_imagerecognition_pdf2word

通用 PDF OCR 到 Word API 数据接口 文件处理&#xff0c;OCR&#xff0c;PDF 高可用图像识别引擎&#xff0c;基于机器学习&#xff0c;超精准识别率。 1. 产品功能 通用识别接口&#xff1b;支持中英文等多语言字符混合识别&#xff1b;formdata 格式 PDF 文件流传参&#xf…

[极客大挑战 2019]HTTP 1

[极客大挑战 2019]HTTP 1 审题 看到题目页面发现没啥东西&#xff0c;直接看源码发现了&#xff0c;Secret.php 进入查看题目&#xff0c;发现又是一道跟着提示达到条件的题目 知识点 跟着题目走。 解题 题目说不是来自https://Sycsecret.buuoj.cn的访问&#xff0c;但是我…

深入了解区块链:Web3的基础架构与发展

在数字时代的浪潮中&#xff0c;区块链技术正逐渐成为Web3的重要基础&#xff0c;重新定义互联网的结构和用户体验。Web3不仅是一个全新的网络阶段&#xff0c;更代表了一种去中心化的理念&#xff0c;强调用户主权和数据隐私。本文将深入探讨区块链在Web3中的基础架构、技术特…