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

以leetcode733题为例

题目解析:

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

算法原理分析:

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

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

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

全局变量:无

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

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

剪枝:无

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

代码编写:

相关推荐
微光闪现9 分钟前
国际航班动态提醒与延误预测优选平台指南
大数据·人工智能·算法
leoufung10 分钟前
LeetCode 120. Triangle:从 0 分到 100 分的思考过程(含二维 DP 与空间优化)
linux·算法·leetcode
w-w0w-w17 分钟前
C++构造函数初始化列表全解析
c++
梵尔纳多26 分钟前
初识 OpenGL
c++·图形渲染
gihigo199829 分钟前
基于反步法的路径追踪控制
算法
Jim-2ha029 分钟前
【JavaScript】常见排序算法实现
javascript·算法·排序算法
王老师青少年编程35 分钟前
2025年12月GESP(C++二级): 黄金格
c++·算法·gesp·csp·信奥赛·二级·黄金格
一起搞IT吧36 分钟前
相机Camera日志实例分析之十二:相机Camx【萌拍后置zoom拍照】单帧流程日志详解
android·c++·数码相机·智能手机
十五年专注C++开发40 分钟前
浅谈Qt中的QSql模块整体设计
开发语言·数据库·c++·qt
Herbert_hwt1 小时前
C语言位操作符详解:从入门到实战应用
c语言·算法