请告诉我如何将二维数组传递给所谓的函数'getCount',并提出其他更好的方法

问题描述

向量A []最初包含所有元素,我已将所有元素复制到数组arr

任务是获取给定元素中的岛屿数量

int getCount(int *arr,int r,int c,int row,int column)
{
    if (r < 0 || c < 0 || r > row || c > column)
        return 0;
    if (arr[r][c] == 0)
        return 0;
    arr[r][c] = 0;
    int val = 1;
    for (int i = r - 1; r < r + 1; r++)
        for (int j = -1; j < c + 1; c++)
        {
            if (i != r || j != c)
                getCount(arr,r,c,row,column);
        }
    return val;
}

int findislands(vector<int> A[],int N,int M)
{
    int arr[N][M];
    for(int i=0;i<N;i++)
    for(int j=0;j<M;j++)
    {
        int temp=(i*M)+j;
        arr[i][j]=A[temp];
    }
    for(int row=0;row<N;row++)
        for (int column = 0; column < M; column++)
    {
        if (arr[row][column] == 1)
            count += getCount((int *)arr,column,N,M);
    }
    return count;
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)