资讯详情

资讯详情

6. 图-lc-python

200. 岛屿数量 - 力扣LeetCode给你一个由1陆地和0水组成的的二维网格请你计算网格中岛屿的数量。岛屿总是被水包围并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外你可以假设该网格的四条边均被水包围。示例 1输入grid [ [1,1,1,1,0], [1,1,0,1,0], [1,1,0,0,0], [0,0,0,0,0] ]输出1示例 2输入grid [ [1,1,0,0,0], [1,1,0,0,0], [0,0,1,0,0], [0,0,0,1,1] ]输出3提示m grid.lengthn grid[i].length1 m, n 300grid[i][j]的值为0或1130. 被围绕的区域 - 力扣LeetCode给你一个m x n的矩阵board由若干字符X和O组成捕获所有被围绕的区域连接一个单元格与水平或垂直方向上相邻的单元格连接。区域连接所有O的单元格来形成一个区域。围绕如果一个区域中的所有O单元格都不在棋盘的边缘则该区域被包围。这样的区域完全被X单元格包围。通过原地将输入矩阵中的所有O替换为X来捕获被围绕的区域。你不需要返回任何值。示例 1输入board [[X,X,X,X],[X,O,O,X],[X,X,O,X],[X,O,X,X]]输出[[X,X,X,X],[X,X,X,X],[X,X,X,X],[X,O,X,X]]解释在上图中底部的区域没有被捕获因为它在 board 的边缘并且不能被围绕。示例 2输入board [[X]]输出[[X]]提示m board.lengthn board[i].length1 m, n 200board[i][j]为X或O994. 腐烂的橘子 - 力扣LeetCode在给定的m x n网格grid中每个单元格可以有以下三个值之一值0代表空单元格值1代表新鲜橘子值2代表腐烂的橘子。每分钟腐烂的橘子周围 4 个方向上相邻的新鲜橘子都会腐烂。返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能返回-1。示例 1输入grid [[2,1,1],[1,1,0],[0,1,1]]输出4示例 2输入grid [[2,1,1],[0,1,1],[1,0,1]]输出-1解释左下角的橘子第 2 行 第 0 列永远不会腐烂因为腐烂只会发生在 4 个方向上。示例 3输入grid [[0,2]]输出0解释因为 0 分钟时已经没有新鲜橘子了所以答案就是 0 。提示m grid.lengthn grid[i].length1 m, n 10grid[i][j]仅为0、1或21091. 二进制矩阵中的最短路径 - 力扣LeetCode给你一个n x n的二进制矩阵grid中返回矩阵中最短畅通路径的长度。如果不存在这样的路径返回-1。二进制矩阵中的 畅通路径 是一条从左上角单元格即(0, 0)到 右下角 单元格即(n - 1, n - 1)的路径该路径同时满足下述要求路径途经的所有单元格的值都是0。路径中所有相邻的单元格应当在8 个方向之一上连通即相邻两单元之间彼此不同且共享一条边或者一个角。畅通路径的长度是该路径途经的单元格总数。示例 1输入grid [[0,1],[1,0]]输出2示例 2输入grid [[0,0,0],[1,1,0],[1,1,0]]输出4示例 3输入grid [[1,0,0],[1,1,0],[1,1,0]]输出-1提示n grid.lengthn grid[i].length1 n 100grid[i][j]为0或1207. 课程表 - 力扣LeetCode你这个学期必须选修numCourses门课程记为0到numCourses - 1。在选修某些课程之前需要一些先修课程。 先修课程按数组prerequisites给出其中prerequisites[i] [ai, bi]表示如果要学习课程ai则必须先学习课程bi。例如先修课程对[0, 1]表示想要学习课程0你需要先完成课程1。请你判断是否可能完成所有课程的学习如果可以返回true否则返回false。示例 1输入numCourses 2, prerequisites [[1,0]]输出true解释总共有 2 门课程。学习课程 1 之前你需要完成课程 0 。这是可能的。示例 2输入numCourses 2, prerequisites [[1,0],[0,1]]输出false解释总共有 2 门课程。学习课程 1 之前你需要先完成​课程 0 并且学习课程 0 之前你还应先完成课程 1 。这是不可能的。提示1 numCourses 20000 prerequisites.length 5000prerequisites[i].length 20 ai, bi numCoursesprerequisites[i]中的所有课程对互不相同547. 省份数量 - 力扣LeetCode有n个城市其中一些彼此相连另一些没有相连。如果城市a与城市b直接相连且城市b与城市c直接相连那么城市a与城市c间接相连。省份是一组直接或间接相连的城市组内不含其他没有相连的城市。给你一个n x n的矩阵isConnected其中isConnected[i][j] 1表示第i个城市和第j个城市直接相连而isConnected[i][j] 0表示二者不直接相连。返回矩阵中省份的数量。示例 1输入isConnected [[1,1,0],[1,1,0],[0,0,1]]输出2示例 2输入isConnected [[1,0,0],[0,1,0],[0,0,1]]输出3提示1 n 200n isConnected.lengthn isConnected[i].lengthisConnected[i][j]为1或0isConnected[i][i] 1isConnected[i][j] isConnected[j][i]
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →