所以我试图解决这个问题是给定一个数字网格,我希望在网格中有一个偶数的位置,通过这个位置,它会找到所有其他连接到它的偶数元素。
这张照片显示了我要描述的内容。图片假设我有6的位置
这是我写的代码我几乎可以肯定它可以工作我只是想看看是否有任何方法可以提高效率
getLinksEven(grid,0,1);
static void getLinksEven(Server[][] grid, int k, int j)
{
try{
if(grid[k-1][j].isEven()&& !grid[k-1][j].isCracked()){
grid[k-1][j].setCracked(true);
getLinksEven(grid,k-1,j);
}
}
catch(ArrayIndexOutOfBoundsException a)
{
//do nothing
}
try{
if(grid[k][j-1].isEven()&& !grid[k][j-1].isCracked()){
grid[k][j-1].setCracked(true);
getLinksEven(grid,k,j-1);
}
}
catch(ArrayIndexOutOfBoundsException a)
{
//do nothing
}
try{
if(grid[k+1][j].isEven()&& !grid[k+1][j].isCracked()){
grid[k+1][j].setCracked(true);
getLinksEven(grid,k+1,j);
}
}
catch(ArrayIndexOutOfBoundsException a)
{
//do nothing
}
try{
if(grid[k][j+1].isEven()&& !grid[k][j+1].isCracked()){
grid[k][j+1].setCracked(true);
getLinksEven(grid,k,j+1);
}
}
catch(ArrayIndexOutOfBoundsException a)
{
//do nothing
}
}