leetcode.cn"/>
leetcode.cn
class Solution {public int[][] floodFill(int[][] image, int sr, int sc, int newColor) {// 新值和旧值相等没有必要进行填充if (newColor == image[sr][sc]){return image;}dfs(image,sr,sc,newColor,image[sr][sc]);return image;}private void dfs(int[][] image, int sr, int sc, int newColor,int oldColor){// 越界或者这个点不能涂就返回if ( sr < 0 || sr >= image.length || sc < 0 || sc >= image[sr].length || image[sr][sc] != oldColor){return;}// 涂色 + 四个方向扩散image[sr][sc] = newColor;dfs(image,sr - 1,sc,newColor,oldColor);dfs(image,sr + 1,sc,newColor,oldColor);dfs(image,sr ,sc - 1 ,newColor,oldColor);dfs(image,sr ,sc + 1,newColor,oldColor);}
}
更多推荐
leetcode.cn
发布评论