
dfs
圆滚滚的柴柴
这个作者很懒,什么都没留下…
展开
-
NC15 求二叉树的层序遍历
题目:NC15 求二叉树的层序遍历 思路: 广搜:借助队列实现树的广搜。 深搜:递归,传入树的深度。 代码:BFS import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * } */ public class Solution { /** * * @param root TreeN原创 2021-08-18 15:28:55 · 147 阅读 · 0 评论 -
leetcode 207. 课程表
题目: 207. 课程表 思路: 深搜:判断是否有环。每个节点有三种状态,未访问0,正在访问1,已经访问2.深搜过程中,第一次遇到该节点,把状态置为1;若本次深搜再次遇到状态为1的,说明有环,结束;若某个节点往下已经搜索完了都没有环,就把状态置为2,表示已经访问结束. 广搜:需要给每个节点建立一个入度表,表示有多少个节点指向本节点.建立一个队列,首先把入度为0的节点入队列,然后若队列不为空,则弹出队头元素,更新入度表,把队头元素指向的节点的入度减一,此时如果有节点入度变为1,就加入队列.根据这个算原创 2021-07-29 18:25:37 · 157 阅读 · 0 评论 -
牛客 剑指offer:平衡二叉树
题目: 平衡二叉树 思路: dfs 深搜递归函数返回深度,判断左右子树的深度差是否大于1。 代码: public class Solution { public boolean result = true; public boolean IsBalanced_Solution(TreeNode root) { dfs(root); return result; } public int dfs (TreeNode root) {原创 2021-05-07 17:14:56 · 116 阅读 · 0 评论 -
牛客 剑指offer:树的直径
题目:树的直径 思路: dfs。 首先,从任意一个节点开始深搜,找到权重最大的一条路径的末尾节点; 从该节点开始,深搜,找到权重最大的路径即为所求。 主要的点: 图的表示 权重的存储:不可以用二维矩阵,内存会溢出。 深搜避免找回父节点 代码: import java.util.*; /* * public class Interval { * int start; * int end; * } */ public class Solution { /** *原创 2021-05-06 17:23:35 · 126 阅读 · 0 评论 -
牛客 剑指offer:二叉树最大深度
题目:二叉树最大深度 思路:dfs或者bfs 代码: import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * } */ public class Solution { /** * * @param root TreeNode类 * @return int整型原创 2021-04-15 11:31:43 · 148 阅读 · 0 评论 -
牛客 剑指offer:最近公共祖先
题目:最近公共祖先 思路1: 在某个节点小找是否包含某个子节点很容易,所以我们可以对所有节点,判断是否包含给定的两个节点,取最近的即可。这个方法可以AC,但其实,两个递归做了很多重复的运算。 思路2: 其实,祖先节点只有如下三种情况 两个节点分别在祖先节点两侧; a节点就是他们的祖先,b节点在a的左子树或右子树; b节点就是他们的祖先,a节点在b的左子树或右子树; 我们从头深搜二叉树, 如果root节点为空, 或者当前root节点等于两个节点其中一个,就返回当前节点root; 递归对root左子树、r原创 2021-04-15 11:20:58 · 170 阅读 · 0 评论 -
牛客 剑指offer:岛屿数量
题目:岛屿数量 思路:深搜。 从头遍历矩阵,如果遇到一个1,解加1,然后深搜把这个1相连的1全部置为0。 注意:深搜要搜上下左右四个方向,不能只搜索右和下,因为有可能出现“ɔ”这种形状的岛屿,只搜索右方和下方不能覆盖这种情况。 代码: import java.util.*; public class Solution { /** * 判断岛屿数量 * @param grid char字符型二维数组 * @return int整型 */ priva原创 2021-04-09 11:38:16 · 166 阅读 · 0 评论