当前位置: 首页 > news >正文

php旅游网站开发小结沈阳网站推广优化

php旅游网站开发小结,沈阳网站推广优化,企业网站建设有哪些优势,手游源码论坛本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章中,我不仅会讲解多种解题思路及其优化,还会用多种编程语言实现题解,涉及到通用解法时更将归纳总结出相应的算法模板。

为了方便在PC上运行调试、分享代码文件,我还建立了相关的仓库:https://github.com/memcpy0/LeetCode-Conquest。在这一仓库中,你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目归纳、通用解法总结等,还可以看到原题出现频率和相关企业等重要信息。如果有其他优选题解,还可以一同分享给他人。

由于本系列文章的内容随时可能发生更新变动,欢迎关注和收藏征服LeetCode系列文章目录一文以作备忘。

给定一个由 0 和 1 组成的矩阵 mat ,请输出一个大小相同的矩阵,其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。

两个相邻元素间的距离为 1 。

示例 1:

输入:mat = [[0,0,0],[0,1,0],[0,0,0]]
输出:[[0,0,0],[0,1,0],[0,0,0]]

示例 2:

输入:mat = [[0,0,0],[0,1,0],[1,1,1]]
输出:[[0,0,0],[0,1,0],[1,2,1]]

提示:

  • m == mat.length
  • n == mat[i].length
  • 1 <= m, n <= 10^4
  • 1 <= m * n <= 10^4
  • mat[i][j] is either 0 or 1.
  • mat 中至少有一个 0

本题和「1162.地图分析」 一样!那道题理解为需要找到每个  0 0 0 最近的  1 1 1 ,而今天这道题是找每个  1 1 1 最近的  0 0 0

解法 多源BFS

首先把每个源点 0 0 0 入队,然后从各个 0 0 0 同时开始一圈一圈的向 1 1 1 扩散(每个 1 1 1 都是被离它最近的 0 0 0 扩散到的),扩散时可以设置 int[][] dist 来记录距离(即扩散的层次)并同时标志是否访问过。对于本题,可以直接修改原数组 int[][] matrix记录距离标志是否访问,这里要注意先把 m a t mat mat 数组中 1 1 1 的位置设置成 − 1 -1 1 (设成 Integer.MAX_VALUE m × n , m + n m \times n,\ m + n m×n, m+n 都行,只要是个无效的距离值来标志这个位置的 1 1 1 没有被访问过就行)

class Solution {
public:vector<vector<int>> updateMatrix(vector<vector<int>>& mat) {int m = mat.size(), n = mat[0].size();int MAX_VALUE = m + n;queue<pair<int, int>> q;for (int i = 0; i < m; ++i) {for (int j = 0; j < n; ++j) {if (mat[i][j] == 0) q.push({i, j});else mat[i][j] = MAX_VALUE;}}int d[4][2] = {-1, 0, 1, 0, 0, -1, 0, 1};while (!q.empty()) {auto [x, y] = q.front(); q.pop();for (int i = 0; i < 4; ++i) {int u = x + d[i][0], v = y + d[i][1];if (u >= 0 && u < m && v >= 0 && v < n && mat[x][y] + 1 < mat[u][v]) {mat[u][v] = mat[x][y] + 1;q.push({u, v});}}}return mat;}
};

复杂度分析:

  • 时间复杂度: O ( m n ) O(mn) O(mn)
  • 空间复杂度:虽然我们是直接修改原输入数组来存储结果,但最差的情况下即全都是 0 0 0 时,需要把 m ∗ n m * n mn 0 0 0 都入队,因此空间复杂度是 O ( m n ) O(mn) O(mn)
http://www.yidumall.com/news/90014.html

相关文章:

  • 用自己电脑做主机做网站seo
  • 企业网站建设开发四个阶段互联网营销的优势
  • wordpress怎么使用自己的模板潍坊seo排名
  • ui设计需要学哪些课程seo网站优化多少钱
  • 在韩国用什么地图导航佛山seo关键词排名
  • 有什么做衣服的网站吗拼多多关键词排名查询
  • 公司网页制作好了 怎么发布搜索引擎seo如何赚钱
  • 给被k的网站做友链品牌策划包括哪几个方面
  • 网站建设的实训总结seo关键词排名优化哪好
  • 深圳企业网站制作公司介绍互联网广告平台代理
  • 做网站多少钱zwnet如何做网站的教程
  • 专门做饮食加盟的网站北京网络营销公司哪家好
  • 东营高端网站建设化妆品网络营销策划方案
  • 公安网站的建设目的成都网站建设软件
  • 公司设计图片广州优化seo
  • 如何利用影视网站做cpa精准引流推广公司
  • 莒县网站建设公司常州网站seo
  • 大型网站设计首页实例网络营销的策划流程
  • 学雷锋 做美德少年网站营销策划方案模板
  • 昆明网站建设搭建手机app开发
  • 自己做网站需要啥管理系统
  • 济宁市建设银行网站百度seo规则
  • 铜陵电子商务网站建设无需下载直接进入的网站的代码
  • 微信开发者工具的介绍广州百度推广优化
  • 峨眉网站建设代运营电商公司
  • 江西网站开发联系方式seo网站有优化培训吗
  • 网站备案个人信息泄露创量广告投放平台
  • 做网站的公司主要做shm重庆seo网站收录优化
  • 做纸棋的网站seo网站排名优化软件
  • 自己公司内网网站和外网怎么做同步谷歌seo网站运营