专题五:floodfill算法(图像渲染深度优先遍历解析与实现)

以leetcode733题为例

题目解析:

给一个初始坐标(sr,sc)比如示例中的粉色的1,如果周围上下左右都是1,就是连通块(性质相同的地方),把它涂上颜色(2)即可,右下角不算,因为不算对角线的

算法原理分析:

这个系列只会讲解深度优先遍历的解法(关于宽度优先遍历在优选算法中进行讲解)

其实就是以起点做一次深度优先遍历

注意:如果这个填充颜色和一开始的坐标的颜色一样,就直接返回即可

全局变量:无

dfs算法:给一个坐标,先把这个坐标改成2,然后开始扩展上下左右

细节:回溯:不用恢复现场

剪枝:无

递归出口:无路可走时自动出来

代码编写:

相关推荐
三川69824 分钟前
排序算法介绍
数据结构·算法·排序算法
2301_795167203 小时前
玩转Rust高级应用 如何避免对空指针做“解引用”操作,在C/C++ 里面就是未定义行为
c语言·c++·rust
智驱力人工智能5 小时前
基于视觉分析的人脸联动使用手机检测系统 智能安全管理新突破 人脸与手机行为联动检测 多模态融合人脸与手机行为分析模型
算法·安全·目标检测·计算机视觉·智能手机·视觉检测·边缘计算
2301_764441335 小时前
水星热演化核幔耦合数值模拟
python·算法·数学建模
循环过三天5 小时前
3.4、Python-集合
开发语言·笔记·python·学习·算法
priority_key8 小时前
排序算法:堆排序、快速排序、归并排序
java·后端·算法·排序算法·归并排序·堆排序·快速排序
不染尘.8 小时前
2025_11_7_刷题
开发语言·c++·vscode·算法
似水এ᭄往昔8 小时前
【C++】--stack和queue
开发语言·c++
仰望—星空9 小时前
MiniEngine学习笔记 : CommandListManager
c++·windows·笔记·学习·cg·direct3d
来荔枝一大筐9 小时前
力扣 寻找两个正序数组的中位数
算法