LeetCode 面试题08.10 颜色填充

题目描述:
LeetCode面试题08.10颜色填充
类型填充

思路:
编写一个函数用来填充颜色
然后递归

代码如下:

class Solution {
public:
    vector<vector<int>> floodFill(vector<vector<int>>& image, int sr, int sc, int newColor) {
        int color=image[sr][sc];
        around(image,sr,sc,newColor,color);
        return image;
    }
    void around(vector<vector<int>>& image,int i,int j,int newColor,int color){
        if(image[i][j]==newColor)return;
        image[i][j]=newColor;
        if(i-1>=0&&image[i-1][j]==color) around(image,i-1,j,newColor,color);
        if(i+1<=image.size()-1&&image[i+1][j]==color) around(image,i+1,j,newColor,color);
        if(j-1>=0&&image[i][j-1]==color) around(image,i,j-1,newColor,color);
        if(j+1<=image[0].size()-1&&image[i][j+1]==color) around(image,i,j+1,newColor,color);
    }
};

你可能感兴趣的:(leetcode)