我需要开发一种方法,可以接受一个二维数组,并将通过数组来检查由数组位置中的星号定义的“有机体”。一个“有机体”是由在上/下和左/右方向上彼此相邻的所有星号组成,但不是对角线。我的教授建议我创建两个方法,一个返回有机体的数量,同时调用另一个方法,该方法应该是标记“有机体”的递归方法。我已经为第一个方法(如下)启动了一个设置,并使其可以接受长度为0和1的数组,但我不确定如何设置第1个方法、第2个递归方法的其余部分以及如何调用它。
public static int howManyOrganisms(char[][] image){
int organismCount = 0;
for (int row = 0; row < image.length; row++){
for (int col = 0; col < image[row].length; col++){
if (image.length == 0){
return organismCount;
}
else if (image.length == 1 && image[row].length == 1){
if (image[row][col] == '*'){
organismCount += 1;
return organismCount;
}
else {
return organismCount;
}
}
else {
return 0;
}
}
}
return organismCount;
}
暂无答案!
目前还没有任何答案,快来回答吧!