Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从无对角线的矩阵中添加邻域_Java - Fatal编程技术网

Java 从无对角线的矩阵中添加邻域

Java 从无对角线的矩阵中添加邻域,java,Java,我试图在矩阵[3][3]中添加x位置的邻域,我想以一种有效的方式进行添加。目前,我可以添加所有邻居,但我只想添加顶部、底部、左侧和右侧的邻居。我的代码有什么问题 for(int i=line-1;i<=line+1;i++) { for(int j=col-1;j<=col+1;j++) { int[][] matrixAux = this.matrix; if(i<3 && j<3 && i

我试图在矩阵[3][3]中添加x位置的邻域,我想以一种有效的方式进行添加。目前,我可以添加所有邻居,但我只想添加顶部、底部、左侧和右侧的邻居。我的代码有什么问题

for(int i=line-1;i<=line+1;i++)
{
    for(int j=col-1;j<=col+1;j++)
    {
        int[][] matrixAux = this.matrix;
        if(i<3 && j<3 && i>=0 && j>=0)
        {

       //then add neighbor

        }
    }
}

for(int i=line-1;i您的方法只是基于一个太复杂的想法。尝试一些更简单的方法:

int upper = matrix[i + 1][j];
int lower = matrix[i - 1][j];
int left = matrix[i][j - 1];
int right = matrix[i][j + 1];

add(upper , lower , left , right);

在没有任何信息的情况下,很难生成任何代码来演示如何使用它,但我希望这能澄清这个想法。

没有必要使用循环来累加特定位置的邻居。谢谢你的回答!让我更好地解释一下。例如矩阵5 6 3 1 0 5 2 6 4,对于矩阵1,我想添加0的邻域(上、下、左、右),并保存每个邻域的结果矩阵。(稍后我将进行深度优先搜索)@CarlosBernardes唯一的原因,就是为什么你那边多写一点代码会有用,就是要包括我建议的代码,让它更容易理解。不管怎样,我希望这能回答这个问题?