首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Leetcode 200 Number of Islands 个数

Leetcode 200 Number of Islands 个数” 01 — 题目描述: 给出一个2D地图,由陆地(1)和水(0)组成,数出个数.一个被水环绕并且与相邻陆地连接...你可以假设方阵四周被水环绕. ? 02 — 题目分析: ? 采用广度优先遍历方法还是很容易解决这个问题 ? 03 — 算法 1....遍历每一个结点,如果某结点是陆地且未访问过,数目加1,修改未访问标志位,然后把该点放入队列中,以备扩展岛屿使用,进入2 2..../ 记录是否访问过 vector > visited(rows, vector(cols, false)); // 用于遍历某一个相连接所有...q.push(j); visited[i][j] = true; // 修改访问标志 ++count; // 小岛数量

1.2K30
您找到你想要的搜索结果了吗?
是的
没有找到

Leetcode 447. 回旋镖数量

题目描述 给定平面上 n 对不同点,“回旋镖” 是由点表示元组 (i, j, k) ,其中 i 和 j 之间距离和 i 和 k 之间距离相等(需要考虑元组顺序)。 找到所有回旋镖数量。...你可以假设 n 最大为 500,所有点坐标在闭区间 [-10000, 10000] 中。...0,0],[1,0],[2,0]] 输出: 2 解释: 两个回旋镖为 [[1,0],[0,0],[2,0]] 和 [[1,0],[2,0],[0,0]] 解法 根据题意可知,数组中存在 n 个不同点...,以数组中某一个点为中心,若存在两个点到该中心点距离相同,则存在两个回旋镖(因为考虑了回旋镖点顺序)。...所以不妨求出数组中每个点到中心点距离,若存在 x 个点到该中心点距离相同,则存在 x*(x-1) 个回旋镖。

37210

LeetCode 200. 岛屿数量(图遍历)

题目信息 给定一个由 ‘1’(陆地)和 ‘0’(水)组成二维网格,计算岛屿数量。一个被水包围,并且它是通过水平方向或垂直方向上相邻陆地连接而成。你可以假设网格四个边均被水包围。...示例 1: 输入: 11110 11010 11000 00000 输出: 1 示例 2: 输入: 11000 11000 00100 00011 输出: 3 来源:力扣(LeetCode)...链接:https://leetcode-cn.com/problems/number-of-islands 著作权归领扣网络所有。...解题 2.1 DFS 图连通性问题,主程序启动DFS,一次搜索中,遇到1点将其置为0(只寻找1点),后面不会再重复查找,对上下左右点(如果存在且为1)递归查找。...BFS,对点1四周存在且为1点入队,迭代查找 竟然超时了,有坑代码请查看我解题评论。

45810

Linux系统文件句柄数量问题

在Linux下面部署应用时候,有时候会遇上Socket/File: Can’t open so many files问题,其实Linux是有文件句柄限制(就像WinXP?)...,而且默认不是很高,一般都是1024,作为一台生产服务器,其实很容易就达到这个数量,因此我们需要把这个值改大一些。...大概知道ulimit这个命令是相关,上Google搜索了一下,大多数说很含糊,也没有统一说一下,经过两个小时看了不少文章终于弄清楚ulimit相关一些配置问题。...我们可以用ulimit -a来查看所有限制值,我只关心文件句柄数量问题 open files (-n) 1024 这个就是限制数量 这里,有很多ulimit文章都说很含糊,究竟这个1024...sys/fs/file-nr 只读,可以看到整个系统目前使用文件句柄数量 查找文件句柄问题时候,还有一个很实用程序lsof 可以很方便看到某个进程开了那些句柄 也可以看到某个文件/

4.3K10

LeetCode刷题实战447:回旋镖数量

算法重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !...今天和大家聊问题叫做 回旋镖数量,我们先来看题面: https://leetcode-cn.com/problems/number-of-boomerangs/ You are given n points...回旋镖 是由点 (i, j, k) 表示元组 ,其中 i 和 j 之间距离和 i 和 k 之间欧式距离相等(需要考虑元组顺序)。 返回平面上所有回旋镖数量。...; 每个距离作为键,点个数作为值,故而采用哈希表方式进行存储; 如果存在n个点与某一点距离相等,则由排列组合可得n*(n-1)种排列方式,即存在n*(n-1)种回旋镖 class Solution...,如果觉得有所收获,请顺手点个在看或者转发吧,你们支持是我最大动力 。

19540

Python3编码问题

​介绍Python3编码问题前,第一个段落对字节、ASCII​与Unicode与UTF-8等进行基本介绍,如果不对这几种编码犯头晕,可直接跳过。...因为针对是空间浪费问题,因此这种UTF-8编码是可变长短,从英文字母一个字节,到中文通常三个字节,再到某些生僻字六个字节。...解决了空间问题,UTF-8编码还有一个神奇附加功能,那就是兼容了老大哥ASCII编码。一些老古董软件现在在UTF-8编码中可以继续工作。...Python3默认编码 Python3中默认是UTF-8,我们通过以下代码: import sys sys.getdefaultencoding() 可查看Python3默认编码。​...这里说下hex,是用来转换成十六进制函数,学过单片机的人对hex肯定不会陌生。 最后扩展,在网上看到他人问题。我们写下类似于'\u4e2d'字符,Python3知道我们想表达什么。

1.1K10

LeetCode 694. 不同岛屿数量(BFSDFS+set)

题目 给定一个非空01二维数组表示网格,一个岛屿由四连通(上、下、左、右四个方向) 1 组成,你可以认为网格四周被海水包围。 请你计算这个网格中共有多少个形状不同岛屿。...两个岛屿被认为是相同,当且仅当一个岛屿可以通过平移变换(不可以旋转、翻转)和另一个岛屿重合。 样例 1: 11000 11000 00011 00011 给定上图,返回结果 1。...注意: 11 1 和 1 11 是不同岛屿,因为我们不考虑旋转、翻转操作。 注释 : 二维数组每维大小都不会超过50。...来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/number-of-distinct-islands 著作权归领扣网络所有。...解题 记录开始BFS或DFS起点,后续点跟起点做差,存储路径到set中去重,返回 set 大小 2.1 BFS class Solution { public: int numDistinctIslands

1K20

LeetCode 1196. 最多可以买到苹果数量(贪心)

题目 楼下水果店正在促销,你打算买些苹果,arr[i] 表示第 i 个苹果单位重量。 你有一个购物袋,最多可以装 5000 单位重量东西,算一算,最多可以往购物袋里装入多少苹果。...示例 1: 输入:arr = [100,200,150,1000] 输出:4 解释:所有 4 个苹果都可以装进去,因为它们重量之和为 1450。...示例 2: 输入:arr = [900,950,800,1000,700,800] 输出:5 解释:6 个苹果总重量超过了 5000,所以我们只能从中任选 5 个。...提示: 1 <= arr.length <= 10^3 1 <= arr[i] <= 10^3 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems...解题 先拿轻,能拿最多个数 class Solution { public: int maxNumberOfApples(vector& arr) { sort(arr.begin

93720

LeetCode 418. 屏幕可显示句子数量(DP)*

题目 给你一个 rows x cols 屏幕和一个用 非空 单词列表组成句子,请你计算出给定句子可以在屏幕上完整显示次数。 注意: 一个单词不能拆分成两行。...单词在句子中顺序必须保持不变。 在一行中 两个连续单词必须用一个空格符分隔。 句子中单词总量不会超过 100。 每个单词长度大于 0 且不会超过 10。...: 输入: rows = 2, cols = 8, 句子 sentence = ["hello", "world"] 输出: 1 解释: hello--- world--- 字符 '-' 表示屏幕上一个空白位置...来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/sentence-screen-fitting 著作权归领扣网络所有。...解题 参考大佬题解 先看看1行能不能放下完整句子 然后不能放下完整句子空位,从 i 单词开始放(i=0…n-1),下一行开头是哪个单词 class Solution { public:

1K10

LeetCode 5968. 银行中激光束数量

题目 银行内部防盗安全装置已经激活。 给你一个下标从 0 开始二进制字符串数组 bank ,表示银行平面图,这是一个大小为 m x n 二维矩阵。...满足 r1 < i < r2 所有 行 i ,都 没有安全设备 。 激光束是独立,也就是说,一个激光束既不会干扰另一个激光束,也不会与另一个激光束合并成一束。 返回银行中激光束数量。...1 <= m, n <= 500 bank[i][j] 为 '0' 或 '1' 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/number-of-laser-beams-in-a-bank...解题 根据题意,就是找出 1 数量不为0行,这些新行相邻行之间1个数相乘总和就是答案 class Solution: def numberOfBeams(self, bank: List...[i-1]*nonzero[i]; return ans 104 ms 16.2 MB Python3 ---- 我CSDN博客地址 https://michael.blog.csdn.net

37130

如何控制golang协程并发数量问题

问题 最近搞压测,写了一个压测工具,就是想通过go来实现一秒发多少个请求,然后我写了一段这样代码,如下,当然压测代码我就没有贴了,我贴了主要核心代码,主要是起一个定时器,然后通过但仅此去读定时器通道...,这个是标准输出造成。...解决方案 1:不同应用程序,消耗资源是不一样。比较推荐方式是:应用程序来主动限制并发协程数量。 关于上面的问题代码我们进行优化,通过channel来控制并发数。...make(chan struct{}, 300) 创建缓冲区大小为 300 channel,在没有被接收情况下,至多发送 300 个消息则被阻塞。...2:调整系统资源上限 可以使用 ulimit -n 999999,将同时打开文件句柄数量调整为 999999 来解决这个问题

2.1K40
领券