广度优先搜索
liuliuliudy
这个作者很懒,什么都没留下…
展开
-
Leetcode:200. 岛屿数量
题目: 给定一个由'1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。 示例 1: 输入: 11110 11010 11000 00000 输出:1 示例2: 输入: 11000 11000 00100 00011 输出: 3 AC代码:广度优先 class ...原创 2020-03-24 17:37:01 · 97 阅读 · 0 评论 -
Letcode:199. 二叉树的右视图
题目: 给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例: 输入:[1,2,3,null,5,null,4] 输出:[1, 3, 4] 解释: 1 <--- / \ 2 3 <--- \ \ 5 4 <--- AC代码: c...原创 2020-03-23 13:54:10 · 91 阅读 · 0 评论 -
Leetcode:130. 被围绕的区域
题目: 给定一个二维的矩阵,包含'X'和'O'(字母 O)。 找到所有被 'X' 围绕的区域,并将这些区域里所有的'O' 用 'X' 填充。 示例: 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 解释: 被围绕的区间不会存在于边界上,换句话说,任何边界上的'O'都不...原创 2020-03-23 13:13:35 · 91 阅读 · 0 评论 -
Leetcode:103. 二叉树的锯齿形层次遍历
题目: 给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 例如: 给定二叉树[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回锯齿形层次遍历如下: [ [3], [20,9], [15,7] ] AC代码: clas...原创 2020-03-23 10:08:11 · 85 阅读 · 0 评论 -
Leetcode:695. 岛屿的最大面积
题目: 给定一个包含了一些 0 和 1的非空二维数组grid, 一个岛屿是由四个方向 (水平或垂直) 的1(代表土地) 构成的组合。你可以假设二维矩阵的四个边缘都被水包围着。 找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为0。) 示例 1: [[0,0,1,0,0,0,0,1,0,0,0,0,0], [0,0,0,0,0,0,0,1,1,1,0,0,0], ...原创 2020-03-15 09:07:39 · 68 阅读 · 0 评论 -
Leetcode:690. 员工的重要性
题目: 给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度和 直系下属的id。 比如,员工1是员工2的领导,员工2是员工3的领导。他们相应的重要度为15, 10, 5。那么员工1的数据结构是[1, 15, [2]],员工2的数据结构是[2, 10, [3]],员工3的数据结构是[3, 5, []]。注意虽然员工3也是员工1的一个下属,但是由于并不是直系下属,因此没有体现在员工1的...原创 2020-03-10 17:05:54 · 117 阅读 · 0 评论 -
Leetocde:210课程表 II
题目: 现在你总共有 n 门课需要选,记为0到n-1。 在选修某些课程之前需要一些先修课程。例如,想要学习课程 0 ,你需要先完成课程1 ,我们用一个匹配来表示他们: [0,1] 给定课程总量以及它们的先决条件,返回你为了学完所有课程所安排的学习顺序。 可能会有多个正确的顺序,你只要返回一种就可以了。如果不可能完成所有课程,返回一个空数组。 示例1: 输入: 2, [[1,...原创 2020-03-07 19:05:32 · 85 阅读 · 0 评论 -
Leetcode207:课程表
题目: 现在你总共有 n 门课需要选,记为0到n-1。 在选修某些课程之前需要一些先修课程。例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1] 给定课程总量以及它们的先决条件,判断是否可能完成所有课程的学习? 示例 1: 输入: 2, [[1,0]] 输出: true 解释:总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。所以...原创 2020-03-07 19:02:39 · 135 阅读 · 0 评论 -
Leetcode994:腐烂的橘子
题目: 在给定的网格中,每个单元格可以有以下三个值之一: 值0代表空单元格; 值1代表新鲜橘子; 值2代表腐烂的橘子。 每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。 返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回-1。 示例1: 输入:[[2,1,1],[1,1,0],[0,1,1]] 输出:4 示例 2: 输入:[...原创 2020-03-05 22:43:18 · 81 阅读 · 0 评论