BFS
文章平均质量分 50
Saulty
这个作者很懒,什么都没留下…
展开
-
LeetCode 130. 被围绕的区域
LeetCode 130. 被围绕的区域题目题解代码题目题解题意:与边界相连的‘O’不进行填充,内部的‘O’进行填充可以将边界以及相连的‘O’找出,并替换为其他字母,最后统一进行改变代码// class Solution {// public:// int xx[4]={0,0,1,-1};// int yy[4]={1,-1,0,0};// void solve(vector<vector<char>>& board) {原创 2021-08-14 17:40:34 · 206 阅读 · 0 评论 -
LeetCode 1091. 二进制矩阵中的最短路径
LeetCode 1091. 二进制矩阵中的最短路径题目题解代码题目题解最短路径一般考虑用广度优先遍历深度优先遍历考虑所有的情况,对值进行更新,时间复杂度高考虑dfs的基础原理,规范代码书写,对于矩阵上下左右,或者8邻域的遍历可采取for循环形式;此外,此题中res++与res+1的含义进行反思代码// class Solution {// public:// int min_res=1000000000;//1e9// int xx[8]={1,-1,1,-1,1原创 2021-08-14 17:35:58 · 357 阅读 · 0 评论 -
LeetCode 547. 省份数量
LeetCode 547. 省份数量题目题解代码题目题解图联通问题相当于一维的数组来存储各个点而二维数组每行代表对应点与其他点之间的关系代码class Solution {public: int findCircleNum(vector<vector<int>>& isConnected) { int m=isConnected.size(); int n=isConnected[0].size();原创 2021-08-12 12:48:50 · 83 阅读 · 0 评论 -
LeetCode 200. 岛屿数量
LeetCode 200. 岛屿数量题目题解代码题目题解深度优先+递归广度优先+队列代码// class Solution {// public:// void dfs(vector<vector<char>>& grid,int i,int j){// int m=grid.size();// int n=grid[0].size();// grid[i][j]='0';//原创 2021-08-12 12:48:35 · 87 阅读 · 0 评论 -
LeetCode 112. 路径总和
LeetCode 112. 路径总和题目题解代码题目题解递归+深度优先遍历广度优先遍历代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode原创 2021-07-29 13:24:01 · 86 阅读 · 0 评论 -
LeetCode 226. 翻转二叉树
LeetCode 226. 翻转二叉树题目题解代码题目题解递归,深度优先遍历广度优先遍历代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNod原创 2021-07-29 13:23:46 · 64 阅读 · 0 评论 -
LeetCode 994. 腐烂的橘子
LeetCode 994. 腐烂的橘子题目题解代码题目在给定的网格中,每个单元格可以有以下三个值之一:值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。题解数组的广度优先遍历将腐烂的橘子装进队列,设置visiteddist数组用来记录好橘子到腐烂橘子的距离数组广度优先遍历队列存放两个坐标,设visited数组树广原创 2021-07-12 12:57:07 · 65 阅读 · 0 评论 -
LeetCode 542. 01 矩阵
LeetCode 542. 01 矩阵题目题解代码题目给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离。两个相邻元素间的距离为 1 。示例 1:输入:[[0,0,0],[0,1,0],[0,0,0]]输出:[[0,0,0],[0,1,0],[0,0,0]]示例 2:输入:[[0,0,0],[0,1,0],[1,1,1]]输出:[[0,0,0],[0,1,0],[1,2,1]]提示:给定矩阵的元素个数不超过 10000。给定矩阵中至少有一个元原创 2021-07-12 12:56:22 · 87 阅读 · 0 评论 -
LeetCode 617. 合并二叉树
LeetCode 617. 合并二叉树题目题解代码题目给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1:输入:Tree 1 Tree 21 2/ \ / \3原创 2021-07-11 14:45:18 · 86 阅读 · 0 评论 -
LeetCode 695. 岛屿的最大面积
LeetCode 695. 岛屿的最大面积题目题解代码题目给定一个包含了一些 0 和 1 的非空二维数组 grid 。一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为 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],[0,原创 2021-07-10 12:42:24 · 98 阅读 · 0 评论 -
LeetCode 733. 图像渲染
LeetCode 3. 无重复字符的最长子串题目题解代码题目给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。原创 2021-07-10 12:38:43 · 104 阅读 · 1 评论