![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度搜索
刘裕育
这个作者很懒,什么都没留下…
展开
-
算法题十三 之 图像渲染
题目leetcode 传送门我发现,原题描述很让人迷惑,把一道简简单单的题目故意说得很复杂。简单翻译一下有一个矩阵,宽高是 n 与 m这个矩阵里有颜色值,有一个数字表示现在给你一个点(sr,sc)和一个新的颜色值,让你把这个矩阵与点(sr,sc)直接与间接相连格子染成新的颜色值。判断相连的方式是 上 下 左 右思路从起点(sr,sc)开始深度遍历每次对比上下左右的颜色值是否与当前点一致如果一致,则递归调用如果不一致,则停止。附上代码public int[][] flood原创 2020-09-08 18:47:49 · 221 阅读 · 0 评论 -
算法题 十 之 无向连接图的深度拷贝
题目无向连接图的深度拷贝图的表示方式,用数组表示与当前节点连接的节点,如下面的代码class Node { public int val; public List<Node> neighbors;}思路对于图片的拷贝,需要先掌握图的遍历,图的遍历可以使用深度与广度优先遍历。在这个题目里,我们采用深度优先遍历来解题。深度优先遍历递归调用各个节点。遍历的出口?我们在遍历循环图的时候,是采用标志位当前节点是否已经遍历过了,如果遍历过了就不再遍历,避免重复以及死循环原创 2020-09-08 15:32:07 · 604 阅读 · 0 评论 -
算法题九 之 被围绕的区域
题目给定一个二维的矩阵,包含 ‘X’ 和 ‘O’(字母 O)。找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。例如:X X X XX O O XX X O XX O X X输出:X X X XX X X XX X X XX O X X思路第一步:从题目的观察中可以得知,只要O与边界连接,这个O便不被包围。而与O这个连接的所有O,也都不被包围。第二步:根据第一步的观察,只要O通过连接链与边界产生关系,则当前O是不被包围,反之,则被包围。第三步:原创 2020-09-08 14:56:52 · 401 阅读 · 0 评论