Hallo,
Ich habe folgendes Problem:
ich habe ein 2D Array a und ein 2D Array b, nun möchte ich schauen ob es eine stelle gibt(und wenn ja wo) das Array b in seiner Form im Array a vorkommt. Dabei muss aber auch die Postion aber übereinstimmen also z.B.
a =
xyxy
yyyy
xxcc
b =
y
xc
Dann ist die einzige lösung a[2][3] und a[3][3] und a [3][4]. Ich hoffe das ist irgend wie verständlich.
Nun habe ich folgenden Code:
Leider sucht der mir ja nur erstmal für b[0][length] das richtige und das wäre ja schon bei a[0][1] gegeben.
Kann mir wer helfen das zu erweitern bzw. erklären wie das lösbar wäre?
Ich habe folgendes Problem:
ich habe ein 2D Array a und ein 2D Array b, nun möchte ich schauen ob es eine stelle gibt(und wenn ja wo) das Array b in seiner Form im Array a vorkommt. Dabei muss aber auch die Postion aber übereinstimmen also z.B.
a =
xyxy
yyyy
xxcc
b =
y
xc
Dann ist die einzige lösung a[2][3] und a[3][3] und a [3][4]. Ich hoffe das ist irgend wie verständlich.
Nun habe ich folgenden Code:
Code:
int k = 0;
int pos_i = 0;
int pos_j_min = 0;
int pos_j_max = 0;
for(int i = 0; i < a.length; i++){
for(int j = 0; j < a[i].length; j++){
if(k < b[0].length && a[i][j] == b[0][k]){
if(pos_j_min == 0){
pos_j_min = j;
pos_i = i;
}
else if(j - pos_j_min == b[0].length){
pos_j_max = j;
}
}
}//y von a
}// x von a
if(pos_j_max - pos_j_min == b[0].length){
System.out.println(pos_j_min + " " + pos_j_max);
}
else{
System.out.println("error" + pos_j_min + " " + pos_j_max);
}
Leider sucht der mir ja nur erstmal für b[0][length] das richtige und das wäre ja schon bei a[0][1] gegeben.
Kann mir wer helfen das zu erweitern bzw. erklären wie das lösbar wäre?