LeetCode每日一题,733. FloodFill
先看题目描述
大意就是给定一个二维数组表示的图像,初始坐标和一个新的颜色值,将和初始坐标像素值相同的点重新用新的颜色值上色,并将新图像返回
算法和思路
这题和前几天做过的被围绕的区域类似,但比那道题简单,那道题是需要找出所有与边界相连的字母,然后修改;这题只需要找出所有与初始坐标相连且像素值一样的像素点,并修改其颜色值。算法就是用 dfs深度优先搜索,从初始坐标点开始,找出所有与其连通且像素值一样的像素点,然后用新颜色填充,最后把新的二维数组返回即可。需要注意的是,若新颜色与初始坐标的颜色相同,则直接返回原图
算法源码
1 | class Solution { |