宝安做网站的公司枣庄建设工程管理局网站

web/2025/10/8 2:19:06/文章来源:
宝安做网站的公司,枣庄建设工程管理局网站,昆明专业网站建设,竞价账户托管的公司有哪些文章目录1. 题目2. 解题2.1 超时解2.1 改进计算方法1. 题目 假设你设计一个游戏#xff0c;用一个 m 行 n 列的 2D 网格来存储你的游戏地图。 起始的时候#xff0c;每个格子的地形都被默认标记为「水」。 我们可以通过使用 addLand 进行操作#xff0c;将位置 (row, col)… 文章目录1. 题目2. 解题2.1 超时解2.1 改进计算方法1. 题目 假设你设计一个游戏用一个 m 行 n 列的 2D 网格来存储你的游戏地图。 起始的时候每个格子的地形都被默认标记为「水」。 我们可以通过使用 addLand 进行操作将位置 (row, col) 的「水」变成「陆地」。 你将会被给定一个列表来记录所有需要被操作的位置然后你需要返回计算出来 每次 addLand 操作后岛屿的数量。 注意一个岛的定义是被「水」包围的「陆地」通过水平方向或者垂直方向上相邻的陆地连接而成。 你可以假设地图网格的四边均被无边无际的「水」所包围。 请仔细阅读下方示例与解析更加深入了解岛屿的判定。 示例: 输入: m 3, n 3, positions [[0,0], [0,1], [1,2], [2,1]] 输出: [1,1,2,3] 解析: 起初二维网格 grid 被全部注入「水」。0 代表「水」1 代表「陆地」 0 0 0 0 0 0 0 0 0操作 #1addLand(0, 0) 将 grid[0][0] 的水变为陆地。 1 0 0 0 0 0 Number of islands 1 0 0 0操作 #2addLand(0, 1) 将 grid[0][1] 的水变为陆地。 1 1 0 0 0 0 岛屿的数量为 1 0 0 0操作 #3addLand(1, 2) 将 grid[1][2] 的水变为陆地。 1 1 0 0 0 1 岛屿的数量为 2 0 0 0操作 #4addLand(2, 1) 将 grid[2][1] 的水变为陆地。 1 1 0 0 0 1 岛屿的数量为 3 0 1 0拓展 你是否能在 O(k log mn) 的时间复杂度程度内完成每次的计算 k 表示 positions 的长度来源力扣LeetCode 链接https://leetcode-cn.com/problems/number-of-islands-ii 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题 参考数据结构并查集Disjoint-Set 2.1 超时解 125 / 162 个通过测试用例 将矩阵的每个位置看成并查集中的一个点每次加入一个岛屿把四周是1的点合并掉计算集团个数时间复杂度 O(kmn)O(kmn)O(kmn) class dsu { public:vectorint f;dsu(int n){f.resize(n);for(int i 0; i n; i)f[i] i;}void merge(int a, int b){int fa find(a);int fb find(b);f[fa] fb;}int find(int a){int origin a;while(a ! f[a])a f[a];return f[origin] a;}int countUni(vectorvectorint grid){int count 0, x, y, n grid[0].size();for(int i 0; i f.size(); i){ x i/n, y i-x*n;if(i find(i) grid[x][y]1)count;}return count;} }; class Solution { public:vectorint numIslands2(int m, int n, vectorvectorint positions) {int N m*n, pos, x, y;vectorvectorint grid(m,vectorint(n,0));dsu u(N);vectorint ans(positions.size());vectorvectorint dir {{1,0},{0,1},{0,-1},{-1,0}};for(int i 0, k; i positions.size(); i){grid[positions[i][0]][positions[i][1]] 1;//标记为岛屿pos positions[i][0]*npositions[i][1];//对应并查集中的位置for(k 0; k 4; k){x positions[i][0] dir[k][0];y positions[i][1] dir[k][1];//周围坐标x,yif(x0 xm y0 yn grid[x][y]1)u.merge(pos, x*ny);//合并}ans[i] u.countUni(grid);}return ans;} };2.1 改进计算方法 并查集merge 函数返回是否被合并了合并了数量就减1注意有重复岛屿不能算 class dsu { public:vectorint f;dsu(int n){f.resize(n);for(int i 0; i n; i)f[i] i;}bool merge(int a, int b){int fa find(a);int fb find(b);if(fa ! fb){f[fa] fb;return true;}return false;//返回是否被合并了}int find(int a){int origin a;while(a ! f[a])a f[a];return f[origin] a;} }; class Solution { public:vectorint numIslands2(int m, int n, vectorvectorint positions) {int N m*n, pos, x, y;vectorvectorint grid(m,vectorint(n,0));dsu u(N);vectorint ans(positions.size());vectorvectorint dir {{1,0},{0,1},{0,-1},{-1,0}};unordered_setint s;//有重复的岛屿for(int i 0, k; i positions.size(); i){ans[i] (i0 ? ans[i-1] : 0 )1;//先把这个岛屿算作孤立1grid[positions[i][0]][positions[i][1]] 1;//标记为岛屿pos positions[i][0]*npositions[i][1];//对应并查集中的位置if(s.count(pos))//有该岛屿了重复添加{ans[i]--;continue;}s.insert(pos);for(k 0; k 4; k){x positions[i][0] dir[k][0];y positions[i][1] dir[k][1];//周围坐标x,yif(x0 xm y0 yn grid[x][y]1){if(u.merge(pos, x*ny))//合并了ans[i]--;//减1}}}return ans;} };156 ms 34.7 MB 我的CSDN博客地址 https://michael.blog.csdn.net/ 长按或扫码关注我的公众号Michael阿明一起加油、一起学习进步

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88825.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站设计范文徐州 商城网站

文章目录1. 题目2. 解题1. 题目 你打算用一个水罐给花园里的 n 株植物浇水。 植物排成一行,从左到右进行标记,编号从 0 到 n - 1 。其中,第 i 株植物的位置是 x i 。x -1 处有一条河,你可以在那里重新灌满你的水罐。 每一株植…

做招聘网站高端企业网站建设费用

在电脑UC浏览器的新窗口页中如何打开书签UC浏览器是一个很不错的查询资料的软件,我们可以在UC浏览器的新标签页中打开书签,那么如何打开呢?小编就来为大家介绍一下吧。具体如下:1. 第一步,双击并打开UC浏览器软件。2. …

网站个人建设河北做网站公司那家好

要从PDF文件中提取数据并生成数据库,你可以使用Python中的一些库和工具来实现。 1、安装必要的库:确保已安装所需的库。除了之前提到的PyPDF2、pdfminer.six和pdftotext之外,你可能还需要其他的库来处理提取的数据和数据库操作。例如&#x…

wordpress做下载站中国商标网官方查询系统

theme: smartblue 点赞 关注 收藏 学会了 本文简介 最近字节在推Coze,你可以在这个平台制作知识库、制作工作流,生成一个具有特定领域知识的智能体。 那么,有没有可能在本地也部署一套这个东西呢?这样敏感数据就不会泄露了&…

河北邯郸信息港济南网站建设优化

文章目录 简介原理依赖基础示例功能解析和遍历文档输入从字符串中解析文档从 URL 加载文档从文件加载文档 数据提取使用 DOM 方法导航文档使用 CSS 选择器查找元素使用 XPath 选择器查找元素和节点从元素中提取属性、文本和 HTML 清理HTML 官网: https://jsoup.org…

ui设计师有前途吗搜索引擎优化时营销关键词

Python 交互式可视化库 所属分类:中间件编程 开发工具:Python 文件大小:12843KB 下载次数:1 上传日期:2018-12-06 18:40:56 上 传 者:孤独的老张 说明: 一个 Python 交互式可视化库,…

珠海网站关键词推广一分钟企业宣传片怎么拍

先后顺序: index.html > App.vue的export外的js代码 > main.js > App.vue的export里面的js代码 > Index.vue的export外的js代码 测试的页面代码块: 文件的加载先后顺序: Index.vue的mounted()中的输出没有执行。why&#…

服务好的企业网站怎么建设wordpress里的小工具

时间限制:0.5s 空间限制6M 题意&#xff1a; 给出n个&#xff08;1<n<10000&#xff09;1~m&#xff08;2<m<1000&#xff09;范围内的数&#xff0c;选择其中任意个数&#xff0c;使它们的 乘积 模m 最大&#xff0c;输出最大的分数&#xff0c;和选择的数的编号。…

做网站多久学会wordpress繁简体

基础篇&#xff1a; 第 1 部分&#xff1a;Dart 的基础语法 1.1 Dart 程序的结构 一个简单的 Dart 程序通常包含一个 main() 函数&#xff0c;这是程序的入口点。所有 Dart 程序都会从 main() 函数开始执行。 void main() {print(Hello, Dart!); } void 表示 main() 函数没…

哈尔滨做网站哪家好强手机网站推荐大全

linux常用命令(4) --- Vim编辑器与Shell命令脚本 如何使用vim编辑器来编写文档、配置主机名称、网卡参数以及yum仓库&#xff1b;通过vim编辑器将Linux命令放入合适的逻辑测试语句&#xff08;if、for、while、case&#xff09;后最终写出简单使用的shell脚本;可以通过at命令或…

网站微建站晋江规划建设局网站

题目描述&#xff1a; 给定整数数组 nums 和整数 k&#xff0c;请返回数组中第 k 个最大的元素。 请注意&#xff0c;你需要找的是数组排序后的第 k 个最大的元素&#xff0c;而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入…

生产备案号怎么查询网站深圳十大工业设计公司

模拟堆也是对堆的一次深入理解和一些其它操作&#xff0c;可以了解一下。 文章目录 前言 一、模拟堆 二、算法思路 1.结点上移 2.结点下移 3.插入一个数 4.输出当前集合的最小值 5.删除当前集合的最小值&#xff08;数据保证此时的最小值唯一&#xff09; 6.删除第k个插入的数 …

网站的优化外包php做网站还是linux

1.梳理、总结经纬度处理在Maxcompute平台上的实战应用&#xff0c;如bd09、gcj02、wgs84经纬度坐标系转换UDF函数注册与使用。 2.欢迎批评指正&#xff0c;跪谢一键三连&#xff01; 文章目录 1.参考代码 1.参考代码 坐标系转换 bd09坐标系&#xff08;百度坐标系&#xff09;…

开锁做网站哪个好凡科建站后台登录

贪吃蛇是个非常经典的游戏&#xff0c;用C语言来实现也是一个好玩的事情。这个游戏我写完后放在知乎&#xff0c;竟然点赞的人数超级多。我觉得大家喜欢&#xff0c;一个方面是因为写得简单&#xff0c;大家都能看得懂&#xff0c;一个可扩展性还是非常强的。我试了说一下这个代…

上线了建站教程西柏坡门户网站建设规划书

PHP(PHP&#xff1a;Hypertext Preprocessor&#xff0c;PHP&#xff1a;超文本预处理器)是PHP Group和开放源代码社区共同维护的一种开源的通用计算机脚本语言。该语言主要用于Web开发&#xff0c;支持多种数据库及操作系统。 PHP中存在安全漏洞&#xff0c;该漏洞源于程序没有…

青海wap网站建设比较好wordpress导出数据库

1.Controller概述 Controller是在集群上管理和运行容器的对象。是一个实际存在的对象。 2.pod和Controller之间的关系 pod通过controller实现应用的运维,包括伸缩、滚动升级等操作。 这里pod和controller通过label标签来建立关系。如下所示: 3.Deployment控制器应用场景 -1:…

带管理后台的网站桂林网页

在互联网购物日益普及的今天&#xff0c;四川古力未来科技抖音小店凭借其独特魅力和安全保障措施&#xff0c;成为越来越多消费者信赖的购物平台。本文将详细解读四川古力未来科技抖音小店的安全保障措施&#xff0c;让您在享受便捷购物的同时也能安心放心。 一、平台背景与安全…

西安市建网站找哪家网站建设国外

以实现下面的效果为示例 完整代码&#xff1a; let msgList ["数据1被引用", "数据2被引用"];// 使用html的换行标签拼接信息&#xff0c;默认行距太小&#xff0c;此处用两个<br/><br/>let message 以下数据不能删除&#xff0c;原因是&…

网站原型图是什么网络营销推广流程

一、 选择排序的思想 选择排序的基本思想是&#xff1a;每一趟在n-i1&#xff08;i1&#xff0c;2&#xff0c;…n-1&#xff09;个记录中选取关键字最小的记录作为有序序列中第i个记录。基于此思想的算法主要有简单选择排序、树型选择排序和堆排序。简单选择排序的基本思想&a…

网站建设后台编程茂名本土网站建设公司

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼* 名称&#xff1a;外部中断* 日期&#xff1a;2013-9-10* 晶振:11.0592MHZ******************************************************************/#include //包含头文件&#xff0c;对IO进行定义&#xff0c;可以选中后右击&…